最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP獲取二維數組中某一列的值集合

 更新時間:2015年12月25日 16:37:18   投稿:mrr  
PHP還是比較常用的,于是我研究了一下PHP二維數組,下面通過本文給大家介紹PHP獲取二維數組中某一列的值集合,對php數組二維數組的值相關知識感興趣的朋友一起學習吧

PHP還是比較常用的,于是我研究了一下PHP二維數組。在處理php數組的時候,有一種需求特別的頻繁,如下二維數組:

$arr = array(
1=>array(
'id' => 5,
'name' => '張三'
),
2=>array(
'id' => 6,
'name' => '李四'
)
);

目的就是要取到key為name的集合,得到這個結果:

$arr2 = array(
0=>'張三',
1=>'李四'
);

這里有幾種方法:

1:最簡單的,foreach遍歷數組:

foreach ($arr as $key => $value) {
$arr2[] = $value['name'];
}

2:代碼量稍微少一點的代碼,使用了 array_map 這個php方法:

$arr2 = array_map('array_shift',$arr);

意為把$arr數組的每一項值的開頭的值移出,并返回被移出的每一項值中被移出的值,注意此時新數組$arr2的鍵仍是原數組$arr的鍵

2.1:在方法2的基礎上,可以稍微開一下腦洞,如果需要獲取的是二維數組的每一項的開頭列或結尾列,也可以這樣做:

$arr2 = array_map('reset',$arr);
$arr2 = array_map('end',$arr);

哈哈,也是很方便的

3:還可以使用 array_reduc e方法,不過代碼略多,不過這個方法的想象空間(針對別的數組取值操作)還是蠻大的:

$arr2 = array_reduce($arr, create_function('$result, $v', '$result[] = $v["name"];return $result;'));

array_reduce方法用回調函數迭代地將對數組的值進行操作,而create_function用于一個匿名方法做回調用,這個匿名方法的參數$result為上一次迭代產生的值,$v是當前的值,內部實現既為獲取到數組$arr每一項的”name”的值并push到新$result數組;

4:最后這個終極方法實在是太爽了,一個方法就搞定,而且非常靈活:

$arr2 = array_column($arr, 'name');

第二個參數為想要獲取的那一列的鍵名,是不是很方便呢,不過這個方法有個限制,就是php版本必須 >= 5.5.0,在陳舊項目中使用這個方法還是得斟酌一下哈

PS: php中遍歷二維數組的幾種方式

<?php
//使用for循環(huán)遍歷
$arr2=array(array("張三","20","男"),array("李四","25","男"),array("王五","19","女"),array("趙六","25","女"));
echo "<table border=2 bordercolor=red><tr><td>姓名</td><td>年齡</td& gt;<td>性別</td></tr>";
for($i=0;$i<4;$i++){
echo "<tr>";
for($j=0;$j<3;$j++){
  echo "<td>";
  echo $arr2[$i][$j];
  echo "</td>";
}
echo "</tr>";
echo "<br>";
}
echo "</table>";
?>
//使用foreach遍歷
<?php
$arr = array('one'=>array('name'=>'張三','age'=>'23','sex'=>'男'),
  'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
  'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
  'four'=>array('name'=>'趙六','age'=>'12','sex'=>'女'));
foreach($arr as $k=>$val){
  echo $val['name'].$val['age'].$val['sex']."<br>";
}
echo "<p>";
?>
<?php
$arr = array('one'=>array('name'=>'張三','age'=>'23','sex'=>'男'),
  'two'=>array('name'=>'李四','age'=>'43','sex'=>'女'),
  'three'=>array('name'=>'王五','age'=>'32','sex'=>'男'),
  'four'=>array('name'=>'趙六','age'=>'12','sex'=>'女'));
foreach($arr as $key=>$value){
foreach($value as $key2=>$value2){
  echo $value2;
}
echo "<br>";
}
?>

相關文章

  • PHP中in_array的隱式轉換的解決方法

    PHP中in_array的隱式轉換的解決方法

    本篇文章主要介紹了PHP中in_array的隱式轉換的解決方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • php實現微信小程序授權登錄功能(實現流程)

    php實現微信小程序授權登錄功能(實現流程)

    這篇文章主要介紹了php實現微信小程序授權登錄功能,本文通過一段詳細的代碼給大家講解的非常詳細,需要的朋友參考下
    2019-11-11
  • Laravel基礎-關于引入公共文件的兩種方式

    Laravel基礎-關于引入公共文件的兩種方式

    今天小編就為大家分享一篇Laravel基礎-關于引入公共文件的兩種方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • php注銷代碼(session注銷)

    php注銷代碼(session注銷)

    為了安全管理員不想使用后臺后,最好是注銷下,其實就是銷毀session
    2012-05-05
  • PHP數組實際占用內存大小原理解析

    PHP數組實際占用內存大小原理解析

    這篇文章主要介紹了PHP數組實際占用內存大小原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • 注釋PHP和html混合代碼的小技巧(分享)

    注釋PHP和html混合代碼的小技巧(分享)

    下面小編就為大家?guī)硪黄⑨孭HP和html混合代碼的小技巧(分享)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • Zend Framework實現自定義過濾器的方法

    Zend Framework實現自定義過濾器的方法

    這篇文章主要介紹了Zend Framework實現自定義過濾器的方法,結合實例形式分析了Zend Framework自定義過濾器的簡單定義與使用方法,需要的朋友可以參考下
    2016-12-12
  • thinkPHP下ueditor的使用方法詳解

    thinkPHP下ueditor的使用方法詳解

    這篇文章主要介紹了thinkPHP下ueditor的使用方法,結合實例形式較為詳細的講述了thinkPHP下使用ueditor的具體步驟與相關技巧,需要的朋友可以參考下
    2015-12-12
  • thinkPHP5.0框架URL訪問方法詳解

    thinkPHP5.0框架URL訪問方法詳解

    這篇文章主要介紹了thinkPHP5.0框架URL訪問方法,具體分析了thinkPHP5.0框架的URL路徑結構與常見訪問方法,以及隱藏入口文件的實現技巧,需要的朋友可以參考下
    2017-03-03
  • php微信公眾號開發(fā)(2)百度BAE搭建和數據庫使用

    php微信公眾號開發(fā)(2)百度BAE搭建和數據庫使用

    這篇文章主要介紹了php微信公眾號開發(fā)第二課,百度BAE搭建和數據庫使用,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12

最新評論

墨玉县| 玉溪市| 泾阳县| 高陵县| 梁山县| 沧州市| 莱芜市| 天全县| 南华县| 福州市| 株洲县| 渭南市| 莫力| 南投市| 丹寨县| 孝义市| 武川县| 绥中县| 临城县| 通州区| 东城区| 孟连| 班戈县| 攀枝花市| 新安县| 灵丘县| 兴义市| 电白县| 辽宁省| 墨竹工卡县| 鲁甸县| 邻水| 嘉兴市| 绥芬河市| 扎兰屯市| 鲜城| 松溪县| 巴中市| 青海省| 南汇区| 丹江口市|