<?php
$file = new SplTempFileObject();
for ($i = 0; $i < 100; $i++) {
$file->fwrite("Foo $i\n");
}
$file->rewind();
function get_line($file) {
$triggerNext = $file->next();
$return = array();
$return['line'] = $file->key();
$return['contents'] = trim($file->current());
return $return;
}
$array = [];
$array[] = get_line($file);
$array[] = get_line($file);
$array[] = get_line($file);
echo json_encode($array, JSON_PRETTY_PRINT);
- Output for 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
- [
{
"line": 1,
"contents": "Foo 0"
},
{
"line": 2,
"contents": "Foo 1"
},
{
"line": 3,
"contents": "Foo 2"
}
]
- Output for 8.3.5
- Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
[
{
"line": 1,
"contents": "Foo 0"
},
{
"line": 2,
"contents": "Foo 1"
},
{
"line": 3,
"contents": "Foo 2"
}
]
preferences:
134.97 ms | 402 KiB | 156 Q