五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

php如何實(shí)現(xiàn)數(shù)組合并但鍵值相同的數(shù)組不互相覆蓋?文末有驚喜哦~~~

2023-08-13 15:25 作者:bili_31175665658  | 我要投稿

一、PHP數(shù)組基礎(chǔ)

(一)、key

1. key只能為integer或string,可同時(shí)存在;

2. 包含合法整型值的字符串key會(huì)被轉(zhuǎn)化為整型存儲(chǔ),如:‘7’的key會(huì)被轉(zhuǎn)化為7存儲(chǔ);

3. 布爾值key會(huì)被轉(zhuǎn)化為整型存儲(chǔ),true會(huì)被轉(zhuǎn)化為1存儲(chǔ),false會(huì)被轉(zhuǎn)化為0存儲(chǔ);

4. null會(huì)被轉(zhuǎn)化為空串(‘’)存儲(chǔ);

5. 如果多個(gè)key值被轉(zhuǎn)化為相同的值,則只使用最后一個(gè),前面的被覆蓋,如:一個(gè)數(shù)組中依次定義了‘1’、true、1的key,則最后只會(huì)存儲(chǔ)key為1的value,之前的值都會(huì)被覆蓋掉;

6. 如果未指定key,則會(huì)被自動(dòng)設(shè)定為之前用過的最大的整型key+1,最小為0;

(二)、value

可以為PHP任意類型(字符串、整型、浮點(diǎn)型、布爾型、對(duì)象、數(shù)組、null、資源類型);

(三)、其他類型轉(zhuǎn)化為數(shù)組類型

1. integer、string、float、boolean、resource類型轉(zhuǎn)化為數(shù)組類型時(shí),會(huì)被自動(dòng)分配key為0,value為其原值;

2. object類型轉(zhuǎn)化為數(shù)組類型時(shí),成員變量名會(huì)作為數(shù)組key,私有屬性的key會(huì)加上類名前綴,保護(hù)屬性的key會(huì)加上‘*’前綴,成員變量的值作為value;

3. null會(huì)被轉(zhuǎn)化為空數(shù)組;

(四)、foreach

1. 兩種形式,foreach(arr as $key => $value)與foreach(arr as $value),其中value是值傳遞,使用&value是引用傳遞;

2. 遍歷依賴數(shù)組內(nèi)部指針;

3. 遍歷結(jié)束后,value會(huì)被保留(在遍歷外能夠獲取到最后value的值),為防止在多次foreach時(shí)出現(xiàn)問題,可以在一次foreach后unset($value)或使用不同的變量;

二、三種數(shù)組合并方式

目前工作中接觸到的PHP數(shù)組合并方式主要有三種:

1、+操作符;

2、array_merge();

3、array_merge_recursive();

它們的區(qū)別主要體現(xiàn)在對(duì)于相關(guān)鍵名(數(shù)字鍵名、字符串鍵名)的處理方式,下面以兩個(gè)實(shí)際例子來提現(xiàn):

(一)、相同數(shù)字鍵名


<?php $arrFirst = [ ? ?111 => "first", ? ?222 => "first", ? ?"first" //會(huì)指定默認(rèn)的數(shù)字鍵223 ]; $arrSecond = [ ? ?111 => "second", ? ?333 => "second", ? ?"second" //會(huì)指定默認(rèn)的數(shù)字鍵334 ]; //對(duì)于重復(fù)的數(shù)字鍵,+操作后,前面數(shù)組的鍵值會(huì)覆蓋后面的,保留之前數(shù)字鍵 var_dump("array + result:", $arrFirst + $arrSecond); //對(duì)于重復(fù)的數(shù)字鍵,array_merge后,重排數(shù)字鍵(字符串鍵不變),不會(huì)覆蓋 var_dump("array_merge result:", array_merge($arrFirst, $arrSecond)); //對(duì)于重復(fù)的數(shù)字鍵,array_merge_recursive后,重排數(shù)字鍵(字符串鍵不變),不會(huì)覆蓋 var_dump("array_merge_recursive result:", array_merge_recursive($arrFirst, $arrSecond)); ?>


運(yùn)行結(jié)果:


編輯

(二)、相同字符串鍵


<?php $arrFirst = [ ? ?"first_key" ?=> 1, ? ?"second_key" => 1, ? ?"third_key" ?=> 1, ]; $arrSecond = [ ? ?"first_key" ?=> 2, ? ?"second_key" => 2, ? ?"fourth_key" => 2, ]; //對(duì)于重復(fù)的字符串鍵,+操作后,前面數(shù)組的鍵值會(huì)覆蓋后面的 var_dump("array + result:", $arrFirst + $arrSecond); //對(duì)于重復(fù)的字符串鍵,array_merge后,后面數(shù)組的鍵值會(huì)覆蓋前面的 var_dump("array_merge result:", array_merge($arrFirst, $arrSecond)); //對(duì)于重復(fù)的字符串鍵,array_merge_recursive后,相同鍵名的鍵值會(huì)被合并到同一數(shù)組中(會(huì)遞歸) var_dump("array_merge_recursive result:", array_merge_recursive($arrFirst, $arrSecond)); ?>

運(yùn)行結(jié)果:



這里有一份 JetBrains 的激活方法,有需要的來取了!

鏈接:https://pan.baidu.com/s/1jxvnKgTsTbkVmjcPGeTm0g

提取碼:2cg8


php如何實(shí)現(xiàn)數(shù)組合并但鍵值相同的數(shù)組不互相覆蓋?文末有驚喜哦~~~的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
横峰县| 增城市| 闻喜县| 西乌| 普定县| 恩平市| 宝丰县| 荃湾区| 东宁县| 尚志市| 行唐县| 石台县| 江阴市| 原平市| 五河县| 抚宁县| 虹口区| 遵化市| 五大连池市| 乌海市| 洪泽县| 绵竹市| 运城市| 将乐县| 英吉沙县| 河西区| 收藏| 巴里| 敖汉旗| 禄劝| 绥中县| 吴桥县| 昌图县| 迁安市| 鄂托克前旗| 连州市| 寿光市| 易门县| 乌兰察布市| 庆阳市| 保德县|