您好,登錄后才能下訂單哦!
今天小編給大家分享一下php中的數組類型有哪些的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
php數組的兩種類型:1、索引數組,下標(鍵名)由數字組成,默認從0開始自動遞增,每個數字對應一個數組元素在數組中的位置。2、關聯數組,下標(鍵名)由字符串或字符串、數字混合的形式組成;如果一個數組中有一個鍵名不是數字,那么這個數組就是關聯數組。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
在 PHP 數組中,鍵名會有一個值與其相對應,即一個鍵/值對。
根據數組鍵名數據類型的不同,我們可以把 PHP 數組分為兩種:
以數字作為鍵名的稱為索引數組(Indexed Array);
以字符串或字符串、數字混合為鍵名的數組稱為關聯數組(Associative Array)。
1、索引數組
索引數組的下標(鍵名)由數字組成,默認從 0 開始,每個數字對應一個數組元素在數組中的位置,不需要特別指定,PHP 會自動為索引數組的鍵名賦一個整數值,然后從這個值開始自動遞增。
<?php header('content-type:text/html;charset=utf-8'); $array=array(1,2,3,4,5,6,7,8,9,10); var_dump($array);//打印數組 ?>
2、關聯數組
關聯數組的下標(鍵名)由數值和字符串混合的形式組成,如果一個數組中有一個鍵名不是數字,那么這個數組就是關聯數組。
<?php header('content-type:text/html;charset=utf-8'); $array=array("id"=>1,"name"=>"李華","age"=>23,"1"=>1,"id2"=>52); var_dump($array);//打印數組 ?>
關聯數組的鍵名可以是任何一個整數或字符串。如果鍵名是一個字符串,則要給這個鍵名加上一個定界修飾符——單引號''或雙引號""。對于索引數組,為了避免混清,最好也加上定界符。
擴展知識:索引數組和關聯數組的相互轉換
關聯數組轉索引數組
在php中,可以使用array_values()函數來將關聯數組轉為索引數組。
array_values($array)
函數的作用是返回數組中所有元素的值,使用起來非常簡單,只有一個必選參數,就可以返回一個包含給定數組中所有值的數組,但不保留鍵名。被返回的數組將使用索引數組的形式,數組的索引從 0 開始且以 1 遞增。
簡單來說,利用該函數可以重置數組鍵名,將字符串或數值混亂的鍵名轉為從0開始且以1遞增的數字鍵名。
array_values() 函數特別適合用于數組中元素下標混亂的數組,或者用于將關聯數組轉化為索引數組。
<?php $arr=array("Peter"=>65,"Harry"=>80,"John"=>78,"Clark"=>90); var_dump($arr); var_dump(array_values($arr)); ?>
索引數組轉關聯數組
在php中,可以利用array_combine()函數來將索引數組轉成關聯數組。
array_combine($keys,$values)
函數通過合并兩個數組的方式創建了一個新數組,其中$keys數組中的元素作為了新數組的鍵名,$values數組的元素為作為了新數組的鍵值。
但需要注意的是,使用array_combine()函數創建數組時,$keys數組和$values數組中的元素個數必須要一致,這才能讓鍵名和鍵值一一對應,否則就會報錯并返回 FALSE。
且$keys數組不可為多維數組,否則也會報錯;但$values數組可以為多維數組。
<?php header("Content-type:text/html;charset=utf-8"); $keys=array("a","b","c","d"); $values=array("red","green","blue","yellow"); var_dump($keys); var_dump($values); echo "使用array_combine()合并數組后:"; var_dump(array_combine($keys,$values)); ?>
以上就是“php中的數組類型有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。