Как проанализировать файл .csv, содержащий арабские символыPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как проанализировать файл .csv, содержащий арабские символы

Сообщение Anonymous »

Я преобразую файл CSV, который имеет только один столбец в массив PHP. В колонке CSV есть некоторые неанглийские персонажи, такие как арабские персонажи, но PHP правильно читает английские персонажи, но арабские персонажи превращаются в некоторые цифры. Это образец моего кода < /p>
function str_to_csv($row)
{
if ($row == '') {
return array();
}
$a = array();
$src = explode(',', $row);
do {
$p = array_shift($src);
while(mb_substr_count($p, '"') % 2 != 0) {
if (count($src) == 0) {
return false;
}
$p .= ',' . array_shift($src);
}
$match = null;
if (preg_match('/^"(.+)"[
]*$/', $p, $match)) {
$p = $match[1];
}
$a[] = str_replace('""', '"', $p);
} while(count($src) > 0);
return $a;
}

function file_getcsv($f)
{
$line = fgets($f);
while(($a = str_to_csv($line)) === false) {
if (feof($f)) {
return false;
}
$line .= "\n" . fgets($f);
}
return $a;
}

function file_to_csv($filename)
{
ini_set("auto_detect_line_endings", true);
$a = array();
$f = fopen($filename, 'r');
while (!feof($f)) {
$rec = file_getcsv($f);
if ($rec === false) {
return false;
}
if (!empty($rec)) {
$a[] = $rec;
}
}
fclose($f);
return $a;
}

$data = file_to_csv('club3.csv');

echo '';
print_r($data);
< /code>
Это мой образец Excel, и он имеет только один столбец < /p>
....
Royal Kings
Mere Cats
Spin Doctors
رأس العين
....

Когда я делаю var_dump () , тогда массив подобен следующему:
...
Royal Kings
)

[32935] => Array
(
[0] =>
Mere Cats
)

[32936] => Array
(
[0] =>
Spin Doctors
)

[32937] => Array
(
[0] =>
1#3 'D9JF
)
...


Подробнее здесь: https://stackoverflow.com/questions/267 ... characters
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»