數據增加,刪除,查詢,排序詳細說明
對數組的添加(首尾數據添加(不限定條數)以及中間任意位置添加數據操作) .
2~對數組的刪除(首尾的數據刪除(不限定條數)以及中間任意位置的數據刪除操作,條件:對數組中間位置刪除的,後面的值往前挪,接上以前的位置) .
3~對數據的排序操作(排序操作,要的是效率) .
4~對數組的查詢(對數組中的某一數據進行查詢,如果滿足,則生成新的數組,這個新的數組就是滿足查詢條件的,條件:查詢,並不是查詢某一個值,還有查詢某一個值滿足某個條件,舉個例子:查詢數組中某個值大於5的,全部篩選出來)
1、php中的數組實質上是map結構,對於索引數組,添加或刪除元素,它並不重新索引。
2、避免混合索引數組和關聯數組
其余的要求,查找php手冊應該有答案。
說實話,我一直記不住那麼多函數。
3。默認的冒泡排序,堆排序,快速排序,插入排序,二分。看你的需求情況了
4.還是循環。
PHP數組雖然強大,但效率也很低
2 數組的刪除,以字符串為索引的,直接刪除就OK。unset
以數字為索引的,unset刪除,然後使用array_values重置數組。
3 usort排序,可以利用callback函數自己來實現算法。效率主要看你寫的算法如何。
1~對數組的添加(首尾數據添加(不限定條數)以及中間任意位置添加數據操作) .
arrar_unshift(數組頭部添加數據)
array_push(數組尾部添加數組)
arrar_fill(中間任意位置添加)
2~對數組的刪除(首尾的數據刪除(不限定條數)以及中間任意位置的數據刪除操作,條件:對數組中間位置刪除的,後面的值往前挪,接上以前的位置) .
array_shift(數組頭部刪除數據)
array_pop(數組為不刪除數據)
array_slice不會對原始數組造成任何修改,我是想說array_splice。
剛才又查了下手冊,發現array_splice功能好強大,對數組的任何位置的任何個數的增刪改操作,都可以用array_splice搞定。
關於非哈希數組重建數字索引的問題,array_merge和array_values都可以,剛才經過試驗,後者更快
什麼是數組?
在使用 PHP 進行開發的過程中,或早或晚,您會需要創建許多相似的變量。
無需很多相似的變量,你可以把數據作為元素存儲在數組中。
數組中的元素都有自己的 ID,因此可以方便地訪問它們。
有三種數組類型:
數值數組
帶有數字 ID 鍵的數組
關聯數組
數組中的每個 ID 鍵關聯一個值
多維數組
包含一個或多個數組的數組 數值數組
數值數組存儲的每個元素都帶有一個數字 ID 鍵。
可以使用不同的方法來創建數值數組:
例子 1
在這個例子中,會自動分配 ID 鍵:
$names = array("Peter","Quagmire","Joe");
例子 2
在這個例子中,我們人工分配的 ID 鍵:
$names[0] = "Peter";
$names[1] = "Quagmire";
$names[2] = "Joe";
可以在腳本中使用這些 ID 鍵:
復制代碼 代碼如下:
<?php
$names[0] = "Peter";
$names[1] = "Quagmire";
$names[2] = "Joe";
echo $names[1] . " and " . $names[2] . " are ". $names[0] . "'s neighbors";
?>
以上代碼的輸出:
Quagmire and Joe are Peter's neighbors
關聯數組
關聯數組,它的每個 ID 鍵都關聯一個值。
在存儲有關具體命名的值的數據時,使用數值數組不是最好的做法。
通過關聯數組,我們可以把值作為鍵,並向它們賦值。
例子 1
在本例中,我們使用一個數組把年齡分配給不同的人:
復制代碼 代碼如下:
$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34);
例子 2
本例與例子 1 相同,不過展示了另一種創建數組的方法:
復制代碼 代碼如下:
$ages['Peter'] = "32";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
可以在腳本中使用 ID 鍵:
復制代碼 代碼如下:
<?php
$ages['Peter'] = "32";
$ages['Quagmire'] = "30";
$ages['Joe'] = "34";
echo "Peter is " . $ages['Peter'] . " years old.";
?>
以上腳本的輸出:
Peter is 32 years old.
多維數組
在多維數組中,主數組中的每個元素也是一個數組。在子數組中的每個元素也可以是數組,以此類推。
例子 1
在本例中,我們創建了一個帶有自動分配的 ID 鍵的多維數組:
復制代碼 代碼如下:
$families = array
(
"Griffin"=>array
(
"Peter",
"Lois",
"Megan"
),
"Quagmire"=>array
(
"Glenn"
),
"Brown"=>array
(
"Cleveland",
"Loretta",
"Junior"
)
);
如果輸出這個數組的話,應該類似這樣:
復制代碼 代碼如下:
Array
(
[Griffin] => Array
(
[0] => Peter
[1] => Lois
[2] => Megan
)
[Quagmire] => Array
(
[0] => Glenn
)
[Brown] => Array
(
[0] => Cleveland
[1] => Loretta
[2] => Junior
)
)
例子 2
讓我們試著顯示上面的數組中的一個單一的值:
echo "Is " . $families['Griffin'][2] . " a part of the Griffin family?";
以上代碼的輸出:
Is Megan a part of the Griffin family?