-1
我正在使用JSON pull parser for PHP 7從龐大的25GB json文件中提取數據。這裏是my dummy json file。
數據提取正常工作,直到JSON文件的Line 153731
,然後我收到此錯誤:解決致命錯誤未捕獲的pcrov JsonReader Parser ParseException(php json)
Fatal error: Uncaught pcrov\JsonReader\Parser\ParseException: Line 153731: Unexpected 'u'. in
C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Lexer.php:134
Stack trace:
#0 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Lexer.php(97): pcrov\JsonReader\Parser\Lexer->consumeLiteral('ull')
#1 [internal function]: pcrov\JsonReader\Parser\Lexer->getIterator()
#2 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Parser.php(180): IteratorIterator->next()
#3 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Parser.php(152): pcrov\JsonReader\Parser\Parser->parsePair()
#4 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Parser.php(205): pcrov\JsonReader\Parser\Parser->parseObject()
#5 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Parser.php(123): pcrov\JsonReader\Parser\Parser->parseValue()
#6 C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Parser.php(202): pcrov\JsonReader\Parser\Parser->parseArray()
#7 C:\xampp\htdocs\json\pcrov\vendor\ in C:\xampp\htdocs\json\pcrov\vendor\pcrov\jsonreader\src\Parser\Lexer.php on line 134
我用Google搜索和精梳計算器知道如何解決這個問題,但一直未果。
這裏是我的代碼:
<?php
require_once 'C:/xampp/htdocs/json/pcrov/vendor/autoload.php';
use \pcrov\JsonReader\JsonReader;
ini_set("max_execution_time", 0);
$reader = new JsonReader();
$reader->open("myjsonfile.json");
$fo = fopen("mycsv.csv", "w");
fputs($fo, "name, ultimateHoldingCompany".PHP_EOL);
while($reader->read()) {
$name = null;
$uhcName = null;
if ($reader->read("entityName")){
$name = null;
$entityName = $reader->value();
}
if ($reader->read("ultimateHoldingCompany")){
$uhcName = null;
$ultimateHoldingCompany = $reader->value();
if (empty($ultimateHoldingCompany)){
$uhcName = null;
}
else {
$uhcName = $ultimateHoldingCompany[0]['name'];
}
//print_r($uhcName); die;
}
fputs($fo, $entityName.",".$uhcName.PHP_EOL);
}
$reader->close();
?>
感謝您的幫助。
你的虛擬文件似乎是一個JPG圖像鏈接〜'Capture.JPG' – Phil
噢對不起。這是一個疏忽。我已糾正它。 – William