第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

將對(duì)象推送到數(shù)組會(huì)覆蓋以前的值

將對(duì)象推送到數(shù)組會(huì)覆蓋以前的值

PHP
翻閱古今 2024-01-19 10:18:33
我繼承了一個(gè)代碼庫(kù),在其中我發(fā)現(xiàn)了一些精煉和“煮沸”的版本,如下所示$json = '[ {"id": 1, "val":"apple"}, {"id": 2, "val":"mango"} ]';$data = json_decode($json);$arr = [];foreach($data as $d){    $m->id  = $d->id;    $m->val = $d->val;    $arr[] = $m;}print_r($arr);結(jié)果Array(    [0] => stdClass Object        (            [id] => 2            [val] => mango        )    [1] => stdClass Object        (            [id] => 2            [val] => mango        ))我的問(wèn)題是為什么當(dāng)前的迭代會(huì)對(duì)它的前任產(chǎn)生任何影響?PHP 版本:7.2編輯:如果問(wèn)題看起來(lái)與 json 有關(guān),但事實(shí)并非如此,我深表歉意,相反,在我的代碼庫(kù)中,我有這些對(duì)象來(lái)自另一個(gè)稱為函數(shù)的對(duì)象。我使用 json_decode 只是為了說(shuō)明問(wèn)題
查看完整描述

1 回答

?
當(dāng)年話下

TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊

$m沒(méi)有明確定義。所以當(dāng) php 第一次遇到時(shí)$m,php 會(huì)創(chuàng)建這個(gè)變量。當(dāng)你有->符號(hào)時(shí),php 就會(huì)理解這是對(duì)象。所有其他迭代都只是使用同一個(gè)實(shí)例$m。


此外,啟用錯(cuò)誤報(bào)告后,您會(huì)看到警告:


警告:從空值創(chuàng)建默認(rèn)對(duì)象


而在 php8 中你會(huì)得到一個(gè)致命錯(cuò)誤。


解決方案:


foreach($data as $d){

    // explicitly define $m

    $m = new stdClass;

    $m->id  = $d->id;

    $m->val = $d->val;

    $arr[] = $m;

}


查看完整回答
反對(duì) 回復(fù) 2024-01-19
  • 1 回答
  • 0 關(guān)注
  • 108 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)