[php-src] Issue #9600: fgetcsv does not read the file correctly

From: Date: Fri, 23 Sep 2022 04:28:39 +0000
Subject: [php-src] Issue #9600: fgetcsv does not read the file correctly
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-242455@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/9600 Author: f2h2h1 ### Description this bug only exists in Windows The following code: ```php <?php $csv = <<<EOF "chinese test.","中文测试。" "chinese, test.","中文,测试。" "chinese test2","中文测试2" "chinese, test2","中文,测试2" EOF; $file = fopen('php://memory', 'a+b'); fwrite($file, $csv); fseek($file, 0, SEEK_SET); $result = []; while($row = fgetcsv($file, 0, ',', '"', '\\')) { if (is_array($row)) { $result[] = $row; } else { break; } } var_dump($result); ``` Resulted in this output: ``` array(2) { [0] => array(5) { [0] => string(13) "chinese test." [1] => string(24) "中文测试。" chinese" [2] => string(7) " test."" [3] => string(34) "中文,测试。" chinese test2"" [4] => string(13) "中文测试2" } [1] => array(2) { [0] => string(14) "chinese, test2" [1] => string(16) "中文,测试2" } } ``` But I expected this output instead: ``` array(4) { [0]=> array(2) { [0]=> string(13) "chinese test." [1]=> string(15) "中文测试。" } [1]=> array(2) { [0]=> string(14) "chinese, test." [1]=> string(18) "中文,测试。" } [2]=> array(2) { [0]=> string(13) "chinese test2" [1]=> string(13) "中文测试2" } [3]=> array(2) { [0]=> string(14) "chinese, test2" [1]=> string(16) "中文,测试2" } } ``` ### PHP Version PHP 7.4.26 ( NTS Visual C++ 2017 x64 ) ### Operating System Windows 10 21H2

« previous php.bugs (#242455) next »