1 php中的創建數組
$product = array('tires','oil','spark');//array()實際上是語言結構而不 是函數
2 如果需要創建一個升序的排列的數字保存在一個陣列中,可以使用range()函數來自動建立陣列
$numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10
$numbers=range(1,10,2 )//1 3 5 7 9 第三個參數設定參數之間的步幅
range語法:
range(first,second,step)//建立並傳回一個包含指定範圍的元素的陣列
first:必需。規定數組元素的最小值。
second:必需。規定數組元素的最大值。
step:可選。規定元素之間的步進制。預設是 1。
3 使用循環存取數組
for循環存取數組
for($i=0;i echo $product[i]." ";
}
foreachct forp $pro){
echo $pro."";
}
4 關聯數組
$prices= array('tires'=>100,'oil'=>200,'spark'=>30); prices['tires'] ,$prices['oil'],$prices['spark']
foreach訪問數組
foreach ($price as $key =>$value){
echo $key.'-'.$ value.'
';
}
each()結構印出陣列
while($element = each($price)){
echo $element['key'].'-'.$element['value'.$element]. '
';
}
list()與each()列印陣列
while(list($product,$pri)=each(prices)){ each( )語法
each(array)// 函數產生由陣列目前內部指標所指向的元素的鍵名和鍵值所組成的陣列,並將內部指標向前移動。傳回的陣列中包含的四個元素:鍵名為 0,1,key 和 value。單元 0 和 key 包含有陣列單元的鍵名,1 和 value 包含有資料。
如果內部指標越過了陣列範圍,本函數將傳回 FALSE。
array: 必備。規定要使用的陣列
list()語法:
list(var1,var2...)//以陣列中的元素為一組變數賦值。 list實際上是一種結構,不是函數,和array類似
var1 必需。第一個需要賦值的變數。
var2 可選。可以有多個變數。
5 多維數組
$products=array(
array('Tire','tires','100'),
array('Oil','oil','300'),arra Speak','100'),
)
循環多維數組
foreach($products as $value){
foreach($value as $va){
}
6數組的排序
sort(array,sorttype)//依升序對給定陣列的值排序
array:必需。輸入的數組。
sorttype:可選。規定如何排列數組的值。可能的值:
•SORT_REGULAR - 預設。以它們原來的類型進行處理(不改變類型)。
•SORT_NUMERIC - 將數值當作數字處理
•SORT_STRING - 以字串為字串來處理
•SORT_LOCALE_STRING - 以本地設定為字串來處理,以本地設定為基礎*。
範例:
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse"); r sort($my_array); ($my_array);
?>
輸出:
Array
( 🎠 [2] => Horse
)
asort(array,sorttype)//對陣列進行排序並保持索引關係。主要用於對那些單元順序很重要的結合數組進行排序
array: 必需。輸入的數組。
sorttype:可選。規定如何排列數組的值。可能的值: •SORT_REGULAR - 預設。以它們原來的類型進行處理(不改變類型)。
•SORT_NUMERIC - 以數字為數字處理
•SORT_STRING - 以字串為字串來處理
•SORT_LOCALE_STRING - 把值當作字串來處理,基於本地設定*。
範例:
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse" => "Dog", "b" => "Cat", "c" => "Horse" => "Dog", "b" => "Cat", "c" => "Horse");
print_r($my_array);
?>
輸出:
Array Dog
[c] => Horse
)
ksort(array,sorttype)//依鍵名對數組排序,保留給陣列值原來的鍵
array: 必需。規定要排序的陣列。
sorttype:可選。規定如何排列數組的值。可能的值:
•SORT_REGULAR - 預設。以它們原來的類型進行處理(不改變類型)。
•SORT_NUMERIC - 以數字為數字處理
•SORT_STRING - 將值當作字串來處理
•SORT_LOCALE_STRING - 將值當作字串為基礎處理* 把設定值。
範例:
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse"); ); print_r ($my_array);
?>
輸出:
Array Cat
[c] => Horse )
反向排序: rsort(),arsort() ,krsort()//用於反向排序(降序排列)
usort(array,sorttype)//使用使用者自訂的函數對陣列排序。
array:必備。規定要排序的陣列。
sorttype:必需。使用者自訂的函數。
函數必須設計為返回-1, 0, 或1,並且應該接受兩個供比較的參數,同時以類似下面這樣的方式來工作:
•如果a = b, 返回0
•如果a > b,回傳1
•如果a 範例:
function my_sort($a, $b) {$a $b) ? -1 : 1;
}
$arr = array("Peter", "glenn","Cleveland","peter","cleveland", "Glenn");
usort($arr, "my_sort");
print_r ($arr); ?>
輸出結果: Array
(
[0] => 中腦> Peter
[4] => Glenn
[5] => Cleveland
)