HEX
Server: Apache
System: Linux dinesh8189 5.15.98-grsec-sharedvalley-2.lc.el8.x86_64 #1 SMP Thu Mar 9 09:07:30 -03 2023 x86_64
User: cgmgerenciamento1 (814285)
PHP: 8.1.26
Disabled: apache_child_terminate,dl,escapeshellarg,escapeshellcmd,exec,link,mail,openlog,passthru,pcntl_alarm,pcntl_exec,pcntl_fork,pcntl_get_last_error,pcntl_getpriority,pcntl_setpriority,pcntl_signal,pcntl_signal_dispatch,pcntl_sigprocmask,pcntl_sigtimedwait,pcntl_sigwaitinfo,pcntl_strerror,pcntl_wait,pcntl_waitpid,pcntl_wexitstatus,pcntl_wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,php_check_syntax,php_strip_whitespace,popen,proc_close,proc_open,shell_exec,symlink,system
Upload Files
File: //proc/self/root/opt/remi/php56/root/usr/share/tests/pecl/json/tests/010-incrementalparserfile.phpt
--TEST--
JsonIncremantalParser::parseFile() test
--SKIPIF--
<?php if (!extension_loaded("json")) print "skip"; ?>
--FILE--
<?php
class Foo {
	public $one  = 1;
	public $arr  = array("foo", "bar");
	public $hash = array("One" => 1, "Two" => 2, "Three" =>3);
	public $pi   = 3.14159;
}
$parser = new JsonIncrementalParser(10, JSON_PARSER_NOTSTRICT);

$fic  = __DIR__.'/minitest.json';
$txt  = "/*\nTest file\n*/\n";
$txt .= json_encode(new Foo(), JSON_PRETTY_PRINT);

file_put_contents($fic, $txt);
var_dump($parser->parseFile($fic));
var_dump($parser->get());	
unlink($fic);

echo "Done\n";
?>
--EXPECT--
int(0)
object(stdClass)#2 (4) {
  ["one"]=>
  int(1)
  ["arr"]=>
  array(2) {
    [0]=>
    string(3) "foo"
    [1]=>
    string(3) "bar"
  }
  ["hash"]=>
  object(stdClass)#3 (3) {
    ["One"]=>
    int(1)
    ["Two"]=>
    int(2)
    ["Three"]=>
    int(3)
  }
  ["pi"]=>
  float(3.14159)
}
Done