ID: 34824
Updated by: [EMAIL PROTECTED]
Reported By: decryptus at gmail dot com
-Status: Open
+Status: Bogus
Bug Type: Filesystem function related
Operating System: Linux debian
PHP Version: 4.4.0
New Comment:
The CSV file should contain
foo|"foo_1\|foo_2"
if you want it to be parsed correctly.
Try with Excel/Spreadsheet and you'll get the same result.
No bug here.
Previous Comments:
------------------------------------------------------------------------
[2005-10-11 10:02:09] decryptus at gmail dot com
Description:
------------
The function fgetcsv has a problem when I parse a csv file.
If you parse a csv for example with delimeter pipe ("|") and you
backslashes a pipe, the function shouldn't take it that a delimeter.
Reproduce code:
---------------
csv_file.csv content:
foo|foo_1\|foo_2
----------------------------------
fgetcsv.php content:
<?php
$handle = fopen('csv_file.csv','r');
while(($line = fgetcsv($handle,1000,'|')) !== false)
{
print '<pre>'; print_r($line); print '</pre>';
}
?>
Expected result:
----------------
Array
(
[0] => foo
[1] => foo_1|foo_2
)
Actual result:
--------------
Array
(
[0] => foo
[1] => foo_1\
[2] => foo_2
)
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=34824&edit=1