首頁 > 後端開發 > PHP問題 > php怎麼對數組逆向排序且不保留鍵名

php怎麼對數組逆向排序且不保留鍵名

青灯夜游
發布: 2023-03-16 20:00:01
原創
2406 人瀏覽過

實作步驟:1、利用array_reverse()函數對數組進行逆向排序,語法“array_reverse(原始數組)”,會傳回一個逆向數組;2、使用array_values()函數重置逆向數組的鍵名,語法“array_values(逆向數組)”,被傳回的數組將使用數值鍵,從0開始且以1遞增。

php怎麼對數組逆向排序且不保留鍵名

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

在php中,可以利用array_reverse()和array_values()函數來對陣列逆向排序且不保留鍵名。

實作步驟:

步驟1:利用array_reverse()函數對陣列進行逆向排序

array_reverse() 函數以相反的元素順序傳回數組。

array_reverse($array,$preserve)
登入後複製
參數描述
#array必要。規定數組。
preserve

可選。規定是否保留原始數組的鍵名。

如果設定為 TRUE 會保留數字的鍵。非數字的按鍵則不受這個設定的影響,總是會被保留。

這個參數是 PHP 4.0.3 新加的。

可能的值:

  • true
  • false

如果第二個參數$preserve指定為true,則元素的數字鍵名保持不變,否則數字鍵名將會遺失(索引從0 開始且以1 遞增)。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$a=array("Volvo","XC90","BMW","Toyota");
$reverse=array_reverse($a);
$preserve=array_reverse($a,true);

var_dump($a);
var_dump($reverse);
var_dump($preserve);
?>
登入後複製

php怎麼對數組逆向排序且不保留鍵名

第二個參數$preserve對關聯陣列無效,無法重置鍵名。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$a=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
$reverse=array_reverse($a);
var_dump($a);
var_dump($reverse);
?>
登入後複製

php怎麼對數組逆向排序且不保留鍵名

因此需要array_values()函數。

步驟2:使用array_values()函數重設逆向數組的鍵名(鍵名會變成數字類型,從0 開始且以1 遞增)

# array_values() 函數傳回包含陣列中所有的值的陣列。

提示:被傳回的陣列將使用數值鍵,從 0 開始且以 1 遞增。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$a=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");
$reverse=array_reverse($a);
var_dump($a);
var_dump($reverse);

$res=array_values($reverse);
var_dump($res);
?>
登入後複製

php怎麼對數組逆向排序且不保留鍵名

推薦學習:《PHP影片教學

以上是php怎麼對數組逆向排序且不保留鍵名的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板