首頁 >後端開發 >PHP問題 >php定義數組有幾種方式

php定義數組有幾種方式

藏色散人
藏色散人原創
2022-12-26 09:29:056626瀏覽

php定義陣列有5種方式,分別是:1、使用array建立陣列;2、使用「$arr[] = 'a';」方式建立陣列;3、使用「array(1= >'jack',2=>'lucy',500=>'hcoder')」方式建立陣列;4、使用「$arr[1] = 'jack';」方式建立陣列;5、使用「 $arr['name'] = '';”方式建立陣列。

php定義數組有幾種方式

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

php定義陣列幾種方式?

5種PHP創建數組的方式

在PHP以及其他程式語言程式設計中,經常會用到數組的創建,在前端開發中,js的陣列創建可以由[]和new Array()直接建立和賦值。然而PHP創建數組的方法有哪些呢?在查閱資料並且網上收集整理總結了下:

php定義數組有幾種方式

1. 使用array創建數組,是最常見和便捷的一個方式:

$arr = array('a','b','c');
$arr[] = 'a' ; $arr[] = 'b' ; $arr[] = 'c';
$arr = array('name' => '关羽' , 'age' => 23 , 'sex' => '男');

2 . 有時候需要建立一個長度為len的隨機數組,所以就可以用range():

 

   定義:array range(first,second,step)  //first:元素最小值   second:元素最大值  step:元素步長(要增加的量)

$number = range(0,5);
print_r ($number);
  
//打印:Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 )
  
$number = range(0,50,10);
print_r ($number);
  
//打印:Array ( [0] => 0 [1] => 10 [2] => 20 [3] => 30 [4] => 40 [5] => 50 )
  
$letter = range("a","d");
print_r ($letter);
  
//打印:Array ( [0] => a [1] => b [2] => c [3] => d )

  3.當然,在某些特定需求下,需要把某些變數存入數組,這些變數的變數名轉換成鍵名,變數值轉換成鍵值(前提:該變數存在):

$firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$result = compact("firstname", "lastname", "age");
print_r($result);
  
//打印: Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 )
  
$firstname = "Peter";
$lastname = "Griffin";
$age = "38";
$name = array("firstname", "lastname");
$result = compact($name, "location", "age");
print_r($result);
  
//打印:Array ( [firstname] => Peter [lastname] => Griffin [age] => 38 )
//由于$location变量不存在,所以存入不了数组

4. 將兩個數組合併為一個新的數組,第一個數組的值是新數組的鍵名,第二個數組裡面的值是新數組的鍵值:

 

#定義:array_combine()函數可以將兩個數字組合併成一個新數組,其中的一個數組是鍵名,另一個陣列的值為鍵值。

$a1=array("a","b","c","d");
$a2=array("Cat","Dog","Horse","Cow");
print_r(array_combine($a1,$a2));
  
//打印:Array ( [a] => Cat [b] => Dog [c] => Horse [d] => Cow )

5. 建立鍵值一樣具有固定長度的陣列:

 

定義:array_fill(start,number,value)  //start:起始索引number:值的個數value:數組值

$a=array_fill(2,3,"Dog");
print_r($a);
  
//打印:Array ( [2] => Dog [3] => Dog [4] => Dog )

 建立數組格式:

第1種格式

##$數組名稱= array('值' , '值', '值',……);

此種格式沒有指定陣列內元素的鍵,PHP 會自動以數字的形式建立鍵,從0 開始,依序累加。

呼叫陣列的格式: $陣列名稱[數字型鍵]

<?php 
$arr = array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;); echo $arr[1]; //输出

#第2種格式

$陣列名稱[] = '值';

$數組名稱[] = '值';

$數組名稱[] = '值';

#此種格式同樣沒有指定數組內元素的鍵, PHP會自動以數字的形式建立鍵, 從0開始,依序累加。

呼叫陣列的格式: $陣列名稱[數字型鍵];

<?php 
$arr[] = &#39;a&#39;; $arr[] = &#39;b&#39;; $arr[] = &#39;c&#39;; echo $arr[1]; //输出b

 

第3種格式

$数组名称 = array(数字类型的键=> ‘值’, 数字类型的键 => ‘值’, 数字类型的键=> ‘值’,……);

呼叫格式: $數組名稱[數字類型的鍵];

<?php 
$arr = array(1=>&#39;jack&#39;,2=>&#39;lucy&#39;,500=>&#39;hcoder&#39;); echo $arr[500]; //输出hcoder

此種格式採用整數作為數組的鍵,php 對數組的支援非常靈活,可以任意定義數組內的數字。

如果數組內出現了重複的鍵則最後出現的元素會覆蓋前面的所有鍵,最後一個為有效值。

 

第4種格式

$數組名稱[整數型別鍵] = '值';

$數組名稱[整數型別鍵] = '值';

$陣列名稱[整數型別鍵] = '值';

##呼叫格式: $陣列名稱[整數型別鍵];

<?php 
$arr[1] = &#39;jack&#39;; $arr[2] = &#39;lucy&#39;; $arr[500] = &#39;hcoder&#39;; echo $arr[500]; //输出hcoder

 

第5種格式(關聯陣列)

$数组名称=array(‘字符串形式的键’=>’值’,‘字符串形式的键’=>’值’,……);

呼叫格式: $陣列名稱['字串形式的鍵'];

<?php 
$arr = array(&#39;name&#39;=>&#39;张三&#39;, &#39;age&#39;=>18); echo $arr[&#39;age&#39;]; //输出18

第6種格式(關聯數組)

$數組名稱[ '字串形式的鍵']=>'值';

$數組名稱[ '字串形式的鍵']=>'值';

……

呼叫格式: $數組名稱['字串形式的鍵'];

<?php 
$arr[&#39;name&#39;] = &#39;张三&#39;; $arr[&#39;age&#39;] = 18; echo $arr[&#39;age&#39;]; //输出18

簡而言之就是用$a[] 和$a=array()

推薦學習:《

PHP影片教學

以上是php定義數組有幾種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn