您好,登錄后才能下訂單哦!
這篇文章主要講解了“php數組可以用什么鍵名”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“php數組可以用什么鍵名”吧!
php數組可以用數字鍵名,也可用字符串鍵名。在PHP中,支持以數字為鍵名的索引數組,也支持以字符串或字符串、數字混合為鍵名的關聯數組。索引數組的下標(鍵名)由數字組成,默認從0開始,每個數字對應一個數組元素在數組中的位置,不需要特別指定,PHP會自動為索引數組的鍵名賦一個整數值,然后從這個值開始自動遞增。
在PHP中,數組 array 是一組有序的變量,其中每個值被稱為一個元素。每個元素由一個特殊的標識符來區分,這個標識符稱為鍵(也稱為下標)。
數組中的每個實體都包含兩項,分別是鍵(key)和值(value)。可以通過鍵值來獲取相應的數組元素,這些鍵可以是數值鍵,也可以是關聯鍵。如果說變量是存儲單個值的容器,那么數組就是存儲多個值的容器。
PHP 數組比其他高級語言中的數組更加靈活,不但支持以數字為鍵名的索引數組,而且支持以字符串或字符串、數字混合為鍵名的關聯數組。
注意:PHP中數組其實是不區分索引還是關聯數組,都是根據鍵名找到對應的鍵值。
1、索引數組
索引數組存儲一系列經過組織的單個或多個值,其中的每個值都可以通過使用一個無符號整數值進行訪問。
索引數組的下標(鍵名)由數字組成,默認從 0 開始,每個數字對應一個數組元素在數組中的位置,不需要特別指定,PHP 會自動為索引數組的鍵名賦一個整數值,然后從這個值開始自動遞增。
索引數組初始化例:
<?php
header("Content-type:text/html;charset=utf-8");
//創建一個索引數組,索引數組的鍵是“0”,值是“蘋果”
$fruit=array("蘋果","香蕉");
var_dump($fruit);
?>
運行結果:
索引數組的三種賦值方式:
array[0]='蘋果';
$arr=array('0'=>'蘋果');
$arr=array('蘋果');
例:
<?php
//請創建一個數組變量arr,并嘗試創建一個索引數組,鍵是0,值是蘋果
$arr=array(0=>'蘋果');
if( isset($arr) ) {print_r($arr);}
?>
用for與foreach可以訪問到數組里面的元素,因for比較容易下面只舉使用foreach的例子,
<?php
$fruit=array('蘋果','香蕉','菠蘿');
foreach($fruit as $key=>$value){
echo '<br>第'.$key.'值是:'.$value;
}
?>
運行結果:
第0值是:蘋果
第1值是:香蕉
第2值是:菠蘿
注:這里$key是鍵值$value則是元素值
2、關聯數組
“關聯數組”是一種具有特殊索引方式的數組。使用字符串或者其他類型的值(除了NULL)來索引它。
其實關聯數組和索引數組的差別只是在鍵值上,關聯數組的鍵值是字符串,并且是人為的規定,例如:
<?php
//創建一個關聯數組,關聯數組的鍵“orange”,值是“橘子”
$fruit=array('orange'=>'橘子');
echo $fruit['orange'];
?>
其余初始化,賦值,foreach的用法基本相同。
擴展知識:關聯數組轉索引數組
在PHP中,可以使用array_values()函數來將關聯數組轉為索引數組。
array_values() 函數的作用是返回數組中所有元素的值,使用起來非常簡單,只有一個必選參數,就可以返回一個包含給定數組中所有值的數組,但不保留鍵名。被返回的數組將使用索引數組的形式,數組的索引從 0 開始且以 1 遞增。
array_values() 函數特別適合用于數組中元素下標混亂的數組,或者用于將關聯數組轉化為索引數組。
<?php
header("Content-type:text/html;charset=utf-8");
$arr=array(1=>"1","a"=>"",2=>"2","b"=>0,"c"=>"blue");
echo "原關聯數組:";
var_dump($arr);
$res=array_values($arr);
echo "轉換后的數組:";
var_dump($res);
?>
感謝各位的閱讀,以上就是“php數組可以用什么鍵名”的內容了,經過本文的學習后,相信大家對php數組可以用什么鍵名這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。