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

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

如何在 PHP 中向?qū)ο筇砑有碌逆I值對(duì)?

如何在 PHP 中向?qū)ο筇砑有碌逆I值對(duì)?

PHP
滄海一幻覺 2021-11-26 16:04:43
我想我的問題有兩個(gè)方面在 Python 中,如果我這樣做x = {key: value}我創(chuàng)建了一個(gè)字典在 javaScript 中,如果我做同樣的事情,我已經(jīng)創(chuàng)建了一個(gè)對(duì)象PHP中的那個(gè)是什么?可能只是我不知道條款我正在用 laravel 做一個(gè)項(xiàng)目。我基本上有一個(gè)我正在訪問的sqlite數(shù)據(jù)庫(kù)。這將返回一個(gè)“對(duì)象”數(shù)組(在 JavaScript 術(shù)語(yǔ)中)。我想通過數(shù)組中的“對(duì)象”執(zhí)行 foreach 循環(huán),并且我想向“對(duì)象”添加一個(gè)新的鍵和值。其次 - 抱歉,我不是 100% 確定 php 中的語(yǔ)法:$person = [0 => {name: "Jake", age: 22},            1 => {name: "Chris", age: 34}];我再次對(duì)語(yǔ)法感到非常抱歉,我直接從 sqlite 數(shù)據(jù)庫(kù)接收數(shù)組,所以在這個(gè)階段它不是太重要。我的問題是 - 如果我想為每個(gè)人添加一個(gè)身高,我該怎么做?讓我改寫一下,我知道使用 foreach 循環(huán)遍歷數(shù)組,我只需要一個(gè)命令,該命令將允許我將新的鍵/值對(duì)附加到字典/對(duì)象/它們?cè)?PHP 中調(diào)用的末尾。結(jié)果將是:$person = [0 => {name: "Jake", age: 22, height: "2m"},           1 => {name: "Chris", age: 34, height: "3m"}];我知道這是一個(gè)非常簡(jiǎn)單的問題,但我正在努力尋找合適的問題來問谷歌。如果我問錯(cuò)了問題,請(qǐng)賜教我我一直在撓頭太久了,我可以用另一種語(yǔ)言輕松做到這一點(diǎn)。我真的很感謝你的幫助。
查看完整描述

3 回答

?
慕妹3242003

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

這將在對(duì)象數(shù)組的末尾追加新對(duì)象

$objectArray[] = $newObject;

如果要向?qū)ο筇砑有聦傩?,只需?zhí)行以下操作:

$object->newPropery = 'value';


查看完整回答
反對(duì) 回復(fù) 2021-11-26
?
Cats萌萌

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

你在這里有兩個(gè)選擇。第一個(gè)只是一個(gè)array. PHP 中的數(shù)組是關(guān)聯(lián)的,因此它們可以使用字符串作為鍵,而不僅僅是數(shù)字。你會(huì)做這樣的事情:


$people = [

 [

  'name' => 'Jane Smith',

  'age' => 20,

 ],

 [

  'name' => 'Mary Sue',

  'age' => 30

 ]

]

要添加一些像這樣的數(shù)組,你可以只定義一個(gè)新的關(guān)鍵:$people[0]['height'] = 2;。如果您愿意,您還可以使用for循環(huán)(或foreach帶引用的)根據(jù)某些公式將其添加到每個(gè)人。


然而,這有點(diǎn)不合時(shí)宜,因?yàn)閿?shù)組構(gòu)成了糟糕的數(shù)據(jù)結(jié)構(gòu):沒有關(guān)于可以在其中包含哪些數(shù)據(jù)、可以使用該數(shù)據(jù)做什么等的預(yù)定義信息。相反,您通常需要聲明一個(gè)類,至少像這樣:


class Person

{

    public $name;

    public $age;

    public $height;

}

然后,你可以創(chuàng)建$person = new Person();和設(shè)置使用箭頭語(yǔ)法的值:$person->name = 'Jane Smith';。理想情況下,您還希望構(gòu)造函數(shù)接受初始值和 setter/getter,以便驗(yàn)證傳遞到對(duì)象中的數(shù)據(jù),而不是盲目地接受給出的任何值,但這可能會(huì)在以后出現(xiàn)。


這是你的兩個(gè)選擇。通常,為快速和臟的臨時(shí)數(shù)據(jù)結(jié)構(gòu)選擇數(shù)組,為更復(fù)雜和持久的數(shù)據(jù)選擇對(duì)象。由于我看不到您想用這些數(shù)據(jù)做什么,我不能嚴(yán)格地說是數(shù)組還是對(duì)象最適合這里。


查看完整回答
反對(duì) 回復(fù) 2021-11-26
?
千巷貓影

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

它已經(jīng)很舊了,但還有一個(gè)沒有提到的選擇。


你可以實(shí)現(xiàn)你在python中檢查過的方式


所以為了創(chuàng)建以下對(duì)象:(Python)


obj = {

 "name": "john";

}


print(obj.name);

我們將要做的:(PHP)


$obj = '{

  "name": "john"

}';

$obj = json_decode($obj);

echo $obj->name;

因?yàn)樵?python 和 javascript 以及其他語(yǔ)言中,我猜他們對(duì)對(duì)象使用 json 格式。php 有一個(gè)內(nèi)置函數(shù)可以將 json 字符串轉(zhuǎn)換為對(duì)象,所以我們只需要將已知格式轉(zhuǎn)換為字符串并告訴 php 解析它,我們最終會(huì)得到相同的結(jié)果。


現(xiàn)在如果我們想向?qū)ο筇砑右恍〇|西,可以通過以下方式完成:


$obj->age = 22;

var_dump($obj);

輸出:


object(stdClass)#4 (2) {

  ["name"]=>

  string(4) "john"

  ["age"]=>

  int(22)

}


查看完整回答
反對(duì) 回復(fù) 2021-11-26
  • 3 回答
  • 0 關(guān)注
  • 1041 瀏覽

添加回答

舉報(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)