Edit report at http://bugs.php.net/bug.php?id=53115&edit=1

 ID:                 53115
 Updated by:         ahar...@php.net
 Reported by:        info at brokerfinances dot com
 Summary:            Crash defining array() $patterns[95]
-Status:             Open
+Status:             Bogus
 Type:               Bug
 Package:            Unknown/Other Function
 Operating System:   Unix/Linux
 PHP Version:        5.3.3
 Block user comment: N

 New Comment:

You're missing an ending single quote, and you obviously have error
reporting turned off, hence the blank page.



Please follow this up with one of the support options at
http://php.net/support if you need further help.


Previous Comments:
------------------------------------------------------------------------
[2010-10-20 14:36:15] info at brokerfinances dot com

Description:
------------
I have a problem with init array var:



$patterns = array();

$patterns[0] = 'any';

....

$patterns[94] = 'any other';



when i have defined from 0 to 94 $patterns and $replacements components
all work ok. But when add the 95 $patterns the php program crash (blank
page is returned by the server)

You know this problem?



I have running the php like CGI scripts with Apache, I don't know
exactly wath is the php version 

Test script:
---------------
<?php

function traduce($string)

  {

  $resultado_string = '';

   

  $patterns = array();



  $patterns[ 0] = '/Date:/';

  $patterns[ 1] = '/Time:/';

  $patterns[ 2] = '/Ticker:/';

  $patterns[ 3] = '/Last:/';

  $patterns[ 4] = '/Pivot:/';

  $patterns[ 5] = '/Title:/';

  $patterns[ 6] = '/Summary:/';

  $patterns[ 7] = '/Update on supports and resistances./';    

  $patterns[ 8] = '/Story:/';

  $patterns[ 9] = '/intraday/';

  $patterns[10] = '/continuation of the rebound/';

  $patterns[11] = '/Our preference:/';

  $patterns[12] = '/Alternative scenario:/';

  $patterns[13] = '/Long positions/';

  $patterns[14] = '/above/';

  $patterns[15] = '/Below/';

  $patterns[16] = '/below/';

  $patterns[17] = '/Above/';

  $patterns[18] = '/with/';

  $patterns[19] = '/targets/';

  $patterns[20] = '/ as /';

  $patterns[21] = '/in extension/';      

  $patterns[22] = '/look for further downside/';

  $patterns[23] = '/@/';

  $patterns[24] = '/ &amp; /';

  $patterns[25] = '/Key levels  Comment/';

  $patterns[26] = '/Comment: /';  

  $patterns[27] = '/the pair has rebounded/';

  $patterns[28] = '/on its support/';

  $patterns[29] = '/ and /';

  $patterns[30] = '/is challenging/';

  $patterns[31] = '/ its /';

  $patterns[32] = '/new resistance/';

  $patterns[33] = '/ last/';

  $patterns[34] = '/under pressure/';

  $patterns[35] = '/Short positions/';

  $patterns[36] = '/the RSI/';

  $patterns[37] = '/is /';

  $patterns[38] = '/badly directed/';

  $patterns[39] = '/look for further upside/';

  $patterns[40] = '/the upside prevails/';

  $patterns[41] = '/the downside prevails/';

  $patterns[42] = '/remains /';

  $patterns[43] = '/the pair has broken/';

  $patterns[44] = '/new support/';

  $patterns[45] = '/resistance/';

  $patterns[46] = '/soporteed by/';

  $patterns[47] = '/a bullish trend line/';

  $patterns[48] = '/a bearish trend line/';

  $patterns[49] = '/the bias /';

  $patterns[50] = '/mixed /';

  $patterns[51] = '/ bullish.</';

  $patterns[52] = '/ bearish.</';

  $patterns[53] = '/a bullish bias./';

  $patterns[54] = '/a bearish bias./';

  $patterns[55] = '/should face a further weakness/';

  $patterns[56] = '/on the upside./';

  $patterns[57] = '/on the downside./';

  $patterns[58] = '/Our Preference:/';

  $patterns[59] = '/SHORT positions/';

  $patterns[60] = '/The upside penetration of/';

  $patterns[61] = '/will call for a rebound towards/';

  $patterns[62] = '/Key levels/';

  $patterns[63] = '/pivot point/';

  $patterns[64] = '/ Intraday /';

  $patterns[65] = '/ Last</';

  $patterns[66] = '/ the pair /';

  $patterns[67] = '/ posting a rebound /';

  $patterns[68] = '/ but /';

  $patterns[69] = '/ conin a/';  

  $patterns[70] = '/ bearish channel/';  

  $patterns[71] = '/rebound.</'; 

  $patterns[72] = '/Trend: /';

  $patterns[73] = '/ST Ltd Upside;/';

  $patterns[74] = '/MT Range/';

  $patterns[75] = '/rebounding/';

  $patterns[76] = '/stands/';

  $patterns[77] = '/ bullish channel/';

  $patterns[78] = '/former support/';

  $patterns[79] = '/support/';

  $patterns[80] = '/lacks/';

  $patterns[81] = '/upward momentum/';

  $patterns[82] = '/downward momentum/';

  $patterns[83] = '/The upside breakout of/';

  $patterns[84] = '/The downside breakout of/';

  $patterns[85] = '/will open the way to/';

  $patterns[86] = '/Fib projection/';

  $patterns[87] = '/next/';

  $patterns[88] = '/should rebound on/';

  $patterns[89] = '/approaching/';

  $patterns[90] = '/calls for caution/';

  $patterns[91] = '/should face a weakness/';

  $patterns[92] = '/ST Ltd Downside;/';

  $patterns[93] = '/has broken/';

  $patterns[94] = '/rising trend line/';

// With the next line crash

//  $patterns[95] = '/hello/; 



  $replacements = array();

  

  $replacements[ 0] = 'Fecha:';

  $replacements[ 1] = 'Hora:';

  $replacements[ 2] = 'Divisa:';

  $replacements[ 3] = 'Último:';

  $replacements[ 4] = 'Pivote:';

  $replacements[ 5] = 'Título:';

  $replacements[ 6] = '&nbsp;';

  $replacements[ 7] = '&nbsp;';

  $replacements[ 8] = 'Análisis:';

  $replacements[ 9] = 'Antradía';

  $replacements[10] = 'Continuación del rebote';

  $replacements[11] = 'Nuestra recomendación:';

  $replacements[12] = 'Escenario alternativo:';

  $replacements[13] = 'Abrir posiciones largas';

  $replacements[14] = 'por encima de';

  $replacements[15] = 'Por debajo de';

  $replacements[16] = 'por debajo de';

  $replacements[17] = 'Por encima de';

  $replacements[18] = 'con';

  $replacements[19] = 'objetivos';

  $replacements[20] = ' como ';

  $replacements[21] = 'como máximo';

  $replacements[22] = 'esperamos una caida';

  $replacements[23] = ' a ';

  $replacements[24] = ' y ';

  $replacements[25] = 'Niveles importantes:<b>';

  $replacements[26] = 'Comentario: ';

  $replacements[27] = 'El par ha rebotado';

  $replacements[28] = 'sobre su soporte';

  $replacements[29] = ' y ';

  $replacements[30] = 'está buscando';

  $replacements[31] = ' su ';

  $replacements[32] = 'nueva resistencia';

  $replacements[33] = ' último';  

  $replacements[34] = 'bajo presión';

  $replacements[35] = 'Abrir posiciones cortas';

  $replacements[36] = 'el RSI';

  $replacements[37] = 'está ';

  $replacements[38] = 'forzado';

  $replacements[39] = 'esperamos una repunte';

  $replacements[40] = 'Permanece alcista';

  $replacements[41] = 'Permanece bajista';

  $replacements[42] = 'permanece ';

  $replacements[43] = 'El par ha roto';

  $replacements[44] = 'nuevo soporte';

  $replacements[45] = 'resistencia';

  $replacements[46] = 'soportado por';

  $replacements[47] = 'una línea de tendencia alcista';

  $replacements[48] = 'una línea de tendencia bajista';

  $replacements[49] = 'el canal ';

  $replacements[50] = 'mixto ';

  $replacements[51] = ' alcista.<';

  $replacements[52] = ' bajista.<';

  $replacements[53] = 'un canal alcista.';

  $replacements[54] = 'un canal bajista.';

  $replacements[55] = 'debería debilitarse';

  $replacements[56] = 'alcista.';

  $replacements[57] = 'bajista.';

  $replacements[58] = 'Nuestra recomandación:';

  $replacements[59] = 'Posiciones cortas';

  $replacements[60] = 'Una penetración alcista de'; 

  $replacements[61] = 'nos llevaría a un rebote hasta';

  $replacements[62] = 'Niveles importantes:<b>';

  $replacements[63] = 'pivote';

  $replacements[64] = '';

  $replacements[65] = ' Último<';

  $replacements[66] = ' el par ';

  $replacements[67] = ' realizando un rebote ';

  $replacements[68] = ' pero ';

  $replacements[69] = ' en un';

  $replacements[70] = ' canal bajista';

  $replacements[71] = 'rebote.<';

  $replacements[72] = 'Tendencia: ';

  $replacements[73] = 'Alcista a';

  $replacements[74] = 'Medio plazo';

  $replacements[75] = 'rebotando';

  $replacements[76] = 'se mantiene';

  $replacements[77] = 'canal alcista';

  $replacements[78] = 'soporte formado';

  $replacements[79] = 'soporte';

  $replacements[80] = 'carece';

  $replacements[81] = 'impulso alcista';

  $replacements[82] = 'impulsobajista';

  $replacements[83] = 'Si la subida rompe';

  $replacements[84] = 'Si la bajada rompe';

  $replacements[85] = 'abrirá el camino a';

  $replacements[86] = 'Poyección Fibo';

  $replacements[87] = 'siguientes';

  $replacements[88] = 'debería rebotar en';

  $replacements[89] = 'acercandose a';

  $replacements[90] = 'debemos tener precaución';

  $replacements[91] = 'debería debilitarse';

  $replacements[92] = 'Bajista a';

  $replacements[93] = 'a roto';

  $replacements[94] = 'línea de tendencia alcista';

// With the next line NO crash

  $replacements[95] = 'hola';

  



  $resultado_string = preg_replace($patterns, $replacements, $string);

  return $resultado_string;

  }

?>

Expected result:
----------------
Translate a string from a especific work in inglish to spanish

Actual result:
--------------
with $patterns[95] defined crash



Actually mi solution is, after call the function, call to other function
with new 95 $patterns with the returned string by trhe first function.


------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=53115&edit=1

Reply via email to