首先,先把我用过的几个array的函数写出来
我自己的感悟:in_array的话,第一个参数是你想要查找的字符串或者数字,然后第二个是数组,是你然后如果你的第一个参数的值在这个数组里面的话,就返回ture,否则就返回false。
定义和用法:
in_array() 函数在数组中搜索给定的值
语法
in_array(value,array,type)
参数 | 描述 |
value | 必需。规定要在数组搜索的值。 |
array | 必需。规定要搜索的数组。 |
type | 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。 |
说明
如果给定的值 value 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。
如果没有在数组中找到参数,函数返回 false。
注释:如果 value 参数是字符串,且 type 参数设置为 true,则搜索区分大小写。
例子 1
$people = array("Peter", "Joe", "Glenn", "Cleveland");
if (in_array("Glenn",$people))
{
echo "Match found";
}
else
{
echo "Match not found";
}
?>
输出:
Match found
例子 2
$people = array("Peter", "Joe", "Glenn", "Cleveland", 23);
if (in_array("23",$people, TRUE))
{
echo "Match found
";
}
else
{
echo "Match not found
";
}if (in_array("Glenn",$people, TRUE))
{
echo "Match found
";
}
else
{
echo "Match not found
";
}if (in_array(23,$people, TRUE))
{
echo "Match found
";
}
else
{
echo "Match not found
";
}
?>
输出:
Match not found
Match found
Match found
我自己的看法,这个方法主要是在数组当中插入一个值到指定的位置
定义和用法:
array_splice() 函数与 array_slice() 函数类似,选择数组中的一系列元素,但不返回,而是删除它们并用其它值代替。
如果提供了第四个参数,则之前选中的那些元素将被第四个参数指定的数组取代。
最后生成的数组将会返回。
语法
array_splice(array,offset,length,array)
参数 | 描述 |
array | 必需。规定数组。 |
offset | 必需。数值。如果 offset 为正,则从输入数组中该值指定的偏移量开始移除。如果 offset 为负,则从输入数组末尾倒数该值指定的偏移量开始移除。。 |
length | 可选。数值。如果省略该参数,则移除数组中从 offset 到 结尾的所有部分。如果指定了 length 并且为正值,则移除这么多元素。如果指定了 length 且为负值,则移除从 offset 到数组末尾倒数 length 为止中间所有的元素。 |
array | 被移除的元素由此数组中的元素替代。如果没有移除任何值,则此数组中的元素将插入到指定位置。 |
提示和注释
提示:如果函数没有删除任何元素 (length=0),则替代数组将从 start 参数的位置插入。(参见例子 3)
注释:不保留替代数组中的键。
例子 1
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,0,2,$a2);
print_r($a1);
?>
输出:
Array ( [0] => Tiger [1] => Lion [2] => Horse [3] => Bird )
例子 2
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
$a2=array(0=>"Tiger",1=>"Lion");
print_r(array_splice($a1,0,2,$a2));
?>
输出:
Array ( [0] => Dog [1] => Cat )
例子 3
length 参数设置为 0:
$a1=array(0=>"Dog",1=>"Cat");
$a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,1,0,$a2);
print_r($a1);
?>
输出:
Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )
我自己的感悟:
定义和用法:
array_unshift — 在数组开头插入一个或多个单元
语法
int array_unshift ( array &$array , mixed $var [, mixed $... ] )
array_unshift() 将传入的单元插入到 array 数组的开头。注意单元是作为整体被插入的,因此传入单元将保持同样的顺序。所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变。
参数 | 描述 |
array | 输入的数组 |
var | 开头插入的变量 |
返回值
返回 array 数组新的单元数目。
例子 1
$queue = array("orange", "banana");
array_unshift($queue, "apple", "raspberry");
print_r($queue);
?>
输出:
Array
(
[0] => apple
[1] => raspberry
[2] => orange
[3] => banana
)
我自己的感悟:
定义和用法:
array_shift — 将数组开头的单元移出数组
语法
mixed array_shift ( array &$array )
array_shift() 将 array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。
参数 | 描述 |
array | 输入的数组 |
返回值
返回移出的值,如果 array 为 空或不是一个数组则返回 NULL。
例子 1
$stack = array("orange", "banana", "apple", "raspberry");
$fruit = array_shift($stack);
print_r($stack);
?>
输出:
Array
(
[0] => banana
[1] => apple
[2] => raspberry
)
并且 orange 被赋给了 $fruit。
我自己的感悟:
定义和用法:
array_push — 将一个或多个单元压入数组的末尾(入栈)
语法
int array_push ( array &$array , mixed $var [, mixed $... ] )
array_push() 将 array 当成一个栈,并将传入的变量压入 array 的末尾。array 的长度将根据入栈变量的数目增加。和如下效果相同:
$array[] = $var;
?>
并对每个 var 重复以上动作。
Note: 如果用 array_push() 来给数组增加一个单元,还不如用 $array[] = ,因为这样没有调用函数的额外负担。
Note: 如果第一个参数不是数组,array_push() 将发出一条警告。这和 $var[] 的行为不同,后者会新建一个数组。
参数 | 描述 |
array | 输入的数组 |
var | 要压入的值 |
返回值
返回处理之后数组的元素个数。
例子 1
$stack = array("orange", "banana");
array_push($stack, "apple", "raspberry");
print_r($stack);
?>
输出:
Array
(
[0] => orange
[1] => banana
[2] => apple
[3] => raspberry
)
并且 orange 被赋给了 $fruit。
array_pop