Добрый день! есть файл, в котором данные разделены ; Я считываю его следующим образом: $f=fopen("ring.csv","r") or die("Ошибка!"); for($i=0; $data=fgetcsv($f, 1000, ";"); $i++) { $num = count($data); if($num==1 && $data[0]==="")continue; for($c=0; $c<$num; $c++){ print iconv('CP1251','UTF-8',$data[$c]); }//for }//for Если запускать на локальном компе (windows), то все отрабатывает нормально. Если отрабатываю на серваке (LINUX), то выводится только латиница и частично кириллица(какими-то кусками). Если вместо PRINT пишу VAR_DUMP, то там где кирилица (string(0)), т.е данных нет. На линуксовом серваке ICONV настроен. Если пробовать выводить на печать без ICONV, то кириллица также не выводится. В чем причина?
Решил проблему так: Код (Text): function xfgetcsv($f='', $x='', $s=';'){ if($str=fgets($f)){ $data=split($s, trim($str)); return $data; }else{ return FALSE; } } $fp = fopen ("ring.csv","r")or die("Ошибка!"); while ($data = xfgetcsv ($fp, 1000, ";")){ $num = count($data); if($num==1 && $data[0]==="")continue; echo "<h3>Строка номер $i ($num полей):</h3>"; for($c=0; $c<$num; $c++){ print "[$c]: ".iconv('CP1251','UTF-8',$data[$c])."<br>"; }//for }//while но не понятно почему первый вариант не работает?[/code]