Error - PHPExcel_Shared_String
Publicado por Andres (1 intervención) el 17/09/2018 18:43:58
Cordial Saludo.
Gracias por leer.
El problema que tengo es el mencionado en el titulo, no puedo generar un archivo Excel con PHPExcel en mi Hosting, cabe resaltar que de forma local funciona perfectamente, pero en el momento de ser subido al servidor, no funciona, Me genera el error ya mencionado, ¿Que puede ser?, ¿Que puedo hacer?.
EL log muestra lo siguiente
[17-Sep-2018 13:25:16 UTC] PHP Fatal error: Uncaught Error: Class 'PHPExcel_Shared_String' not found in C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel\Autoloader.php:11 Stack trace: #0 C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel.php(6): require() #1 C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Consulta_Web_Linde.php(3): require_once('C:\Inetpub\vhos...') #2 {main} thrown in C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel\Autoloader.php on line 11
Me dice que en Autoloader en la linea 11: Versión PHP: 7.2.9
<?php
PHPExcel_Autoloader::register();
if (ini_get('mbstring.func_overload') & 2) {
throw new PHPExcel_Exception('Multibyte function overloading in PHP must be disabled for string functions (2).');
}
PHPExcel_Shared_String::buildCharacterSets();
class PHPExcel_Autoloader
{
public static function register()
{
if (function_exists('__autoload')) {
// Register any existing autoloader function with SPL, so we don't get any clashes
spl_autoload_register('__autoload');
}
// Register ourselves with SPL
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
return spl_autoload_register(array('PHPExcel_Autoloader', 'load'), true, true);
} else {
return spl_autoload_register(array('PHPExcel_Autoloader', 'load'));
}
}
public static function load($pClassName)
{
if ((class_exists($pClassName, false)) || (strpos($pClassName, 'PHPExcel') !== 0)) {
return false;
}
$pClassFilePath = PHPEXCEL_ROOT .
str_replace('_', DIRECTORY_SEPARATOR, $pClassName) .
'.php';
if ((file_exists($pClassFilePath) === false) || (is_readable($pClassFilePath) === false)) {
return false;
}
require($pClassFilePath);
}
}
Gracias por leer.
El problema que tengo es el mencionado en el titulo, no puedo generar un archivo Excel con PHPExcel en mi Hosting, cabe resaltar que de forma local funciona perfectamente, pero en el momento de ser subido al servidor, no funciona, Me genera el error ya mencionado, ¿Que puede ser?, ¿Que puedo hacer?.
EL log muestra lo siguiente
[17-Sep-2018 13:25:16 UTC] PHP Fatal error: Uncaught Error: Class 'PHPExcel_Shared_String' not found in C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel\Autoloader.php:11 Stack trace: #0 C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel.php(6): require() #1 C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Consulta_Web_Linde.php(3): require_once('C:\Inetpub\vhos...') #2 {main} thrown in C:\Inetpub\vhosts\serviciosproyecta.net\httpdocs\Classes\PHPExcel\Autoloader.php on line 11
Me dice que en Autoloader en la linea 11: Versión PHP: 7.2.9
<?php
PHPExcel_Autoloader::register();
if (ini_get('mbstring.func_overload') & 2) {
throw new PHPExcel_Exception('Multibyte function overloading in PHP must be disabled for string functions (2).');
}
PHPExcel_Shared_String::buildCharacterSets();
class PHPExcel_Autoloader
{
public static function register()
{
if (function_exists('__autoload')) {
// Register any existing autoloader function with SPL, so we don't get any clashes
spl_autoload_register('__autoload');
}
// Register ourselves with SPL
if (version_compare(PHP_VERSION, '5.3.0') >= 0) {
return spl_autoload_register(array('PHPExcel_Autoloader', 'load'), true, true);
} else {
return spl_autoload_register(array('PHPExcel_Autoloader', 'load'));
}
}
public static function load($pClassName)
{
if ((class_exists($pClassName, false)) || (strpos($pClassName, 'PHPExcel') !== 0)) {
return false;
}
$pClassFilePath = PHPEXCEL_ROOT .
str_replace('_', DIRECTORY_SEPARATOR, $pClassName) .
'.php';
if ((file_exists($pClassFilePath) === false) || (is_readable($pClassFilePath) === false)) {
return false;
}
require($pClassFilePath);
}
}
Valora esta pregunta
0