在php開發的時候,操作多維數組,比如我們查詢數據庫返回的數據數組,有些時候我們希望可以像數據庫指定返回某一列那樣獲取數組中某一列的值,有些時候我們希望根據每一行中id的值獲取到對應的數據行而不是根據key,但我們不想再去數據庫查一遍,能不能直接在數組中像查詢數據庫一樣查詢數據,本文教大家如何實現這個效果。
開發工具/瀏覽器
PHP開發環境(本文使用的是WAMP)
代碼編輯器(本文用的是PHPstorm)
谷歌瀏覽器
步驟/流程
1.首先我們需要創建一個同結構的多維數組用于測試,代碼及瀏覽器運行效果如圖
2.要實現我們的效果我們要用到PHP的array_column() 函數,該函數具體說明如圖所示
3.使用array_column() 函數,指定第二個參數column_key的值,可以像數據庫指定返回列那樣返回指定鍵值的列,代碼及瀏覽器運行效果如圖
4.使用array_column() 函數,同時指定第二個參數column_key(指定列1)的值和第三個參數index_key(指定列2)的值, 我們可以按指定格式 [指定列2 => 指定列1] 取出數據,比如 ['id'=>'name'] 格式,代碼及瀏覽器運行效果如圖
5.使用array_column() 函數,設置第二個參數column_key的值為null, 設置第三個參數index_key為指定列,我們在數組中可以按指定列返回整行的數據,比如我們可以按ID返回整行的數據,代碼及瀏覽器運行效果如圖
6.總結
1).當我們想按數據庫查詢數據的方式查詢數組時
2).使用array_column() 函數,指定第二個參數column_key的值,可以像數據庫指定返回列那樣返回指定鍵值的列
3).使用array_column() 函數,同時指定第二個參數column_key(指定列1)的值和第三個參數index_key(指定列2)的值, 我們可以按指定格式 [指定列2 => 指定列1] 取出數據
4).使用array_column() 函數,設置第二個參數column_key的值為null, 設置第三個參數index_key為指定列,我們在數組中可以按指定列返回整行的數據
注意事項
PHP有很多實用的函數是大家以前忽略掉的,本系列的文章會為大家詳細介紹所有PHP函數
希望本系列的文章能夠給大家帶來幫助節省大家解決問題的時間