|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2016-06-29 17:54 UTC] cmb@php.net
[2016-06-30 12:29 UTC] miichal dot kozlowski at gmail dot com
[2019-05-06 06:56 UTC] maxlogic dot ga at gmail dot com
[2020-01-15 16:24 UTC] wowlinuxdebian at gmail dot com
[2020-11-18 13:14 UTC] cmb@php.net
-Status: Open
+Status: Duplicate
-Assigned To:
+Assigned To: cmb
[2020-11-18 13:14 UTC] cmb@php.net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Wed Oct 22 19:00:02 2025 UTC |
Description: ------------ Hi, Example 1 shows we set $file->seek(0) and it will return 3 rows: Array ( [0] => 0DATA [1] => 1 St 1 Av [2] => [3] => test [4] => FL [5] => 34221 ) Array ( [0] => 1DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Example 2 shows if we set $file->seek(1) then we are expecting to get 2 rows: Array ( [0] => 1DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) ,but we received 1. Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Test script: --------------- <?php file_put_contents('file.csv', '"0DATA";"1 St 1 Av";"";"test";"FL";"34221"' . PHP_EOL .' "1DATA";"1 St 1 Av";"";"Test";"FL";"34221"' . PHP_EOL .' "2DATA";"1 St 1 Av";"";"Test";"FL";"34221"'); //example 1 $file = new SplFileObject('file.csv'); $file->seek(0); while(!$file->eof()) { print_r($file->fgetcsv(";")); } echo '---' . PHP_EOL; //example 2 $file = new SplFileObject('file.csv'); $file->seek(1); while(!$file->eof()) { print_r($file->fgetcsv(";")); } Expected result: ---------------- Array ( [0] => 0DATA [1] => 1 St 1 Av [2] => [3] => test [4] => FL [5] => 34221 ) Array ( [0] => 1DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) example 2 Array ( [0] => 1DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Actual result: -------------- Array ( [0] => 0DATA [1] => 1 St 1 Av [2] => [3] => test [4] => FL [5] => 34221 ) Array ( [0] => 1DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 ) example 2 Array ( [0] => 2DATA [1] => 1 St 1 Av [2] => [3] => Test [4] => FL [5] => 34221 )