Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php代码中使用远程json文件_Php_Json - Fatal编程技术网

在php代码中使用远程json文件

在php代码中使用远程json文件,php,json,Php,Json,为了获得关于“ID”的详细信息,我准备了以下PHP,其中包含json数组。它工作得很好 <?php $json = '{"records": [ {"Name":"Jhon", "Age":"45", "id":"101"}, {"Name":"Bhil", "Age":"42", "id":"102"}, {"Name":"Tone", "Age":"41", "id":"103"}, ] }';

为了获得关于“ID”的详细信息,我准备了以下PHP,其中包含json数组。它工作得很好

<?php
$json = '{"records": 
       [
         {"Name":"Jhon", "Age":"45", "id":"101"},
         {"Name":"Bhil", "Age":"42", "id":"102"},
         {"Name":"Tone", "Age":"41", "id":"103"},
       ]
    }';

$myjson = json_decode($json, true);  
  foreach ( $myjson['records'] as $row ) {  
                        if ($row['id'] =='216') { 
                         echo 'Details of  login id:&nbsp;'.  $row['id']. '<br/>';
                         foreach ( $row as $field => $value ) {  // loop the fields
                               // do the work here
                             }
                   }
         }
?>

现在,对于我的一个项目,我必须使用不同的VAULE环绕750个ID。 将所有这些放在php文件中可能会降低页面加载速度

因此,我对json文件(远程)进行了分类:xyz.com/dir/jsondata.json


请指导我如何在php代码中添加上述json文件。

使用
$data=file\u get\u contents('xyz.com/dir/jsondata.json')获取文件
然后使用解码json并循环通过它

$myjson = json_decode($data, true);  
  foreach ( $myjson['records'] as $row ) {  
                        if ($row['id'] =='216') { 
                         echo 'Details of  login id:&nbsp;'.  $row['id']. '<br/>';
                         foreach ( $row as $field => $value ) {  // loop the fields
                               // do the work here
                             }
                   }
         }
$myjson=json\u decode($data,true);
foreach($myjson['records']作为$row){
如果($row['id']='216'){
回显“登录id的详细信息:”.$row['id']。
; foreach($field=>$value的行){//循环字段 //在这里工作 } } }
就是您要找的。它将把文件的全部内容放入一个字符串中

$json = file_get_contents('dir/jsondata.json');

我的问题是:远程json文件是否快速加载到php中的json数组?如果远程文件是csv:like xyz.com/dir/data,那么在php文件中包含json数组比使用file_get_contents()会稍微快一些。csvfile_get_contents()将适用于任何文件类型。如果使用CSV文件,则必须解析字符串以创建JSON数组。因此,如何从CSV文件创建JSON数组是一个全新的问题。我建议你问一个新问题,并在这里贴一个链接。