how for descargar 000webhost php apache web-hosting

php - descargar - how to host a website for free



Error de desplazamiento de cadena no inicializada de script de importaciĆ³n de PHP (3)

Desvío de cadena sin inicializar:

... significa que $data no es una matriz.

Tengo un script de importación de Excel como parte de un CMS que anteriormente se ejecutó sin problemas.

Mi proveedor de alojamiento compartido recientemente ha actualizado su infraestructura, incluyendo PHP de 5.1 a 5.2.6, y el script ahora devuelve "Desfase de cadena no inicializado: -XXX en / ruta / nombre de script.php en la línea 27" (XXX es un número decreciente de 512 y /path/scriptname.php, por supuesto, es la ruta completa al script en cuestión).

Devuelve este error para cada línea del archivo de Excel. La línea 27 es solo un retorno desde dentro de una función que es el primer punto en el que se procesan los datos importados:

function GetInt4d($data, $pos) { return ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | (ord($data[$pos+3]) << 24); }

Finalmente implosiona con un "Error fatal: el tamaño de memoria permitido de 47185920 bytes se agotó (intentó asignar 71 bytes) en /path/scriptname.php en la línea 133".

No hay nada útil en los registros de errores de Apache. Estoy perplejo. Alguien tiene alguna idea de al menos dónde mirar? Incluso saber si es probable que sea algo dentro de mi script o algo relacionado con la actualización sería útil. Tuve otro problema con un sitio diferente en el mismo proveedor que (después de la actualización) no pude escribir sesiones en el directorio tmp (ya que se resolvió), pero estoy bastante seguro de que no es eso (?).

EDITAR: Como resultó que la respuesta era que la versión del analizador era incompatible de alguna manera con PHP 5.2.6, pensé que podría ser útil para alguien que el analizador en cuestión es Spreadsheet Excel Reader .


Gracias por la entrada, la situación se ''resolvió'' a través de mí al encontrar una versión más reciente de la biblioteca de análisis que estaba usando. Supongo que el problema tiene que ver con la diferencia entre las versiones de php, aunque no estoy seguro exactamente qué. Solucionado pero frustrante.

EDITAR: Voy a aceptar la respuesta de Till solo con el interés de cerrar la pregunta. Thx nuevamente para la entrada.