加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

用php从json中删除元素

发布时间:2020-12-13 13:41:19 所属栏目:PHP教程 来源:网络整理
导读:对不起我的英语. 我知道还有很多其他问题,但是我找不到任何可以帮助我的东西(或者我可能不理解). 我有一个这样的json(autocaricate.json): [{"nome":"LABORGHINI GALLARDO","descrizione":"LAMBORGHINI GALLARDO ED. NERA- ANNO 2007- ","indirizzo_pubblic
对不起我的英语.
我知道还有很多其他问题,但是我找不到任何可以帮助我的东西(或者我可能不理解).

我有一个这样的json(autocaricate.json):

[
{
"nome":"LABORGHINI GALLARDO","descrizione":"LAMBORGHINI GALLARDO ED. NERA- ANNO 2007- ","indirizzo_pubblicato":"autocaricateeea/LABORGHINI GALLARDO31072013-023853/LABORGHINI GALLARDO31072013-023853.json","indirizzo_immagine_copertina":"autocaricateeea/LABORGHINI GALLARDO31072013-023853/IMG_1414 (600x448).jpg","indirizzo_paginaauto":"autocaricateeea/LABORGHINI GALLARDO31072013-023853/index.html"
},{
"nome":"RENAULT MEGANE","descrizione":"RENAULT MEGANE -ANNO 2006-DIESEL-CC. 1461","indirizzo_pubblicato":"autocaricateeea/RENAULT MEGANE31072013-024103/RENAULT MEGANE31072013-024103.json","indirizzo_immagine_copertina":"autocaricateeea/RENAULT MEGANE31072013-024103/P1080949 (600x450).jpg","indirizzo_paginaauto":"autocaricateeea/RENAULT MEGANE31072013-024103/index.html"
},{
"nome":"FORD MONDEO","descrizione":"FORD MONDEO SINISTRATA- ANNO 2009- DIESEL- CC. 1997-","indirizzo_pubblicato":"autocaricateeea/FORD MONDEO31072013-045216/FORD MONDEO31072013-045216.json","indirizzo_immagine_copertina":"autocaricateeea/FORD MONDEO31072013-045216/P1080971 (600x450).jpg","indirizzo_paginaauto":"autocaricateeea/FORD MONDEO31072013-045216/index.html"
}
]

我想用json从json中删除一个元素(一辆汽车,例如RENAULT MEGANE).
我写了一个这样的函数:

$url = $GET['indirizzo']; //this variable get an address like autocaricateeea/RENAULT MEGANE31072013-024103/index.html

$file = file_get_contents('autocaricate.json');
$data = json_decode($file);
unset($file);//prevent memory leaks for large json.
//insert data here
foreach($data as $elemento) {
    $valore = $elemento['indirizzo_paginaauto'];
    if($valore == $url){
        ****** enter code here ******
    }
}
//save the file
file_put_contents('autocaricate.json',json_encode($data));
unset($data);//release memory

我写的代码是从json文件中删除任何属性(对于我们想要移除的汽车,例如RENAULT MEGANE)?

经过一天的工作,我找到了检查和删除JSON文件中的元素的正确方法.
$i=0;
foreach($data as $element) {
   //check the property of every element
   if($url == $element->indirizzo_paginaauto){
      unset($data[$i]);
      echo ("elemento cancellato");
   }
   $i++;
}

我不知道原因,但我已经在几天前回答了这个问题,但它被删除了.我希望能够正确检查这个答案.对不起我的英语.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读