2016-11-16 4 views
1

Я использую phpexcelreader (http://sourceforge.net/projects/phpexcelreader) для импорта файла excel (XLS). Файл анализируется и импортируется без проблем после того, как пользователь вручную откроет excel, сохранит его, а затем импортирует. Файл не импортируется правильно, когда он импортируется непосредственно из исходной системы, которая генерирует excel.phpexcelreader добавляет « 0» в строку массива excel

Я вывел содержимое обоих файлов excel (хороший файл и файл с ошибками), и это то, что я нашел. Используется это для вывода контента:

echo '<pre>'; 
      var_export($excel->sheets); 
echo '</pre>'; 

Вот часть массива для хорошего файла

0 => 
    array (
    'maxrow' => 0, 
    'maxcol' => 0, 
    'numRows' => 6, 
    'numCols' => 207, 
    'cells' => 
    array (
     4 => 
     array (
     1 => 'Employee First Name', 
     2 => 'Employee Last Name', 

Вот часть массива файла, ошибки из/

0 => 
    array (
    'maxrow' => 0, 
    'maxcol' => 0, 
    'numRows' => 7, 
    'numCols' => 208, 
    'cells' => 
    array (
     4 => 
     array (
     1 => 'E' . "\0" . 'm' . "\0" . 'p' . "\0" . 'l' . "\0" . 'o' . "\0" . 'y' . "\0" . 'e' . "\0" . 'e' . "\0" . ' ' . "\0" . 'F' . "\0" . 'i' . "\0" . 'r' . "\0" . 's' . "\0" . 't' . "\0" . ' ' . "\0" . 'N' . "\0" . 'a' . "\0" . 'm' . "\0" . 'e' . "\0" . '', 
     2 => 'E' . "\0" . 'm' . "\0" . 'p' . "\0" . 'l' . "\0" . 'o' . "\0" . 'y' . "\0" . 'e' . "\0" . 'e' . "\0" . ' ' . "\0" . 'L' . "\0" . 'a' . "\0" . 's' . "\0" . 't' . "\0" . ' ' . "\0" . 'N' . "\0" . 'a' . "\0" . 'm' . "\0" . 'e' . "\0" . '', 

Как вам может видеть, phpexcelreader добавляет символ «\ 0» после символа. Нужна помощь в попытке предотвратить это или как очистить строку?

+0

не \ 0 побег NULL? возможно, просто удалите их, я не уверен, хотя – zack6849

ответ

0

Я выполнил санитарную обработку содержимого каждой ячейки. Это решило проблему

$cell = filter_var($cell, FILTER_SANITIZE_STRING);