2024-07-22 10:14:34 | 我爱编程网
php数组函数有哪些,PHP一般数组与对象数组很多人还不知道,现在让我们一起来看看吧!
PHP一般数组与对象数组
导语:PHP中的foreach作为经常用到的函数,常常用来遍历数组,那么PHP一般数组与对象数组有什么不同呢?让我们了解一下吧!
对于数组中的元素是值的'情形(如一般常见型的数组),foreach只是将数组中的每份元素的值拷贝到each后面的变量,
也就是对值本身的拷贝,对其值进行改变并不会影响到数组本身。
如:
$arr = array(1, 2, 3);
foreach($aa as $el){
$el =+ 100;
}
foreach($arr as $el){
echo $el;
echo "<br/>";
} // 结果:1 2 3
但是如果是对象数组的情形,也就是数组元素均为对象时,此时each后面的变量是对对象引用的拷贝,对其进行的改变会直接影响到原数组本身。这点与上面情形很容易弄混。
如:
$aa = new stdClass();
$aa->name = '张三';
$bb = new stdClass();
$bb->name = '李四';
$arr = array($aa, $bb);
foreach($arr as $element){
$element->name = 'qqyumidi';
}
foreach($arr as $el){
echo $el->name;
echo "<br/>";
} // 结果:qqyumidi qqyumidi
PHP中的常用数组操作方法(每种都给你举个2个例子)
一、数组操作的基本函数
数组的键名和值
array_values($arr); 获得数组的值
array_keys($arr); 获得数组的键名
数组的内部指针
current($arr); 返回数组中的当前单元
pos($arr); 返回数组中的当前单元
数组和变量之间的转换
extract($arr);用于把数组中的元素转换成变量导入到当前文件中,键名当作变量名,值作为变量值
注:(第二个参数很重要,可以看手册使用)使用方法
echo $a;compact(var1,var2,var3);用给定的变量名创建一个数组
二、数组的分段和填充
数组的分段
array_slice($arr,0,3); 可以将数组中的一段取出,此函数忽略键名
array_splice($arr,0,3,array("black","maroon")); 可以将数组中的一段取出,与上个函数不同在于返回的序列从原数组中删除
分割多个数组
array_chunk($arr,3,TRUE); 可以将一个数组分割成多个,TRUE为保留原数组的键名
数组的填充
array_pad($arr,5,'x'); 将一个数组填补到制定长度
三、数组与栈
array_push($arr,"apple","pear"); 将一个或多个元素压入数组栈的末尾(入栈),返回入栈元素的个数
array_pop($arr); 将数组栈的最后一个元素弹出(出栈)
四、数组与列队
array_shift($arr);数组中的第一个元素移出并作为结果返回(数组长度减1,其他元素向前移动一位,数字键名改为从零技术,文字键名不变)
array_unshift($arr,"a",array(1,2));在数组的开头插入一个或多个元素
五、回调函数
array_walk($arr,'function','words'); 使用用户函数对数组中的每个成员进行处理(第三个参数传递给回调函数function)
array_mpa("function",$arr1,$arr2); 可以处理多个数组(当使用两个或更多数组时,他们的长度应该相同)
六、数组的排序
通过元素值对数组排序
sort($arr); 由小到大的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
rsort($arr); 由大到小的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
通过键名对数组排序
ksort($arr); 按照键名正序排序
krsort($arr); 按照键名逆序排序
七、数组的计算
数组元素的求和
array_sum($arr); 对数组内部的所有元素做求和运算
数组的合并
array_merge($arr1,$arr2); 合并两个或多个数组(相同的字符串键名,后面的覆盖前面的,相同的数字键名,后面的不会做覆盖操作,而是附加到后面)
“+”$arr1+$arr2; 对于相同的键名只保留后一个 我爱编程网
数组的差集
array_diff($arr1,$arr2); 返回差集结果数组
array_diff_assoc($arr1,$arr2,$arr3); 返回差集结果数组,键名也做比较
数组的交集
array_intersect($arr1,$arr2); 返回交集结果数组
array_intersect_assoc($arr1,$arr2); 返回交集结果数组,键名也做比较
八、其他的数组函数
range(0,12); 创建一个包含指定范围单元的数组
array_unique($arr); 移除数组中重复的值,新的数组中会保留原始的键名
我爱编程网(https://www.52biancheng.com)小编还为大家带来Php数组用法是什么的相关内容。
php将数组切分为多个数组的函数有吗?答案:你一定是在寻找array_chunk函数:-)准确地说,这个函数就是用于将数组进行分块切割。举一个简单的示例:数组分块array_chunk函数是对数组进行定长分块,输出的结果如下:自动重排索引第二种情况,是保留原索引:保留索引以上。php语言中字符串分割用什么函数?“php分割
php随机数函数在PHP中,随机数(RandomNumber)是指一组伪随机数(Pseudo-randomNumber),即看起来随机的数字序列,但实际上是由一个算法生成的。PHP提供了一些内置函数,可以用来生成伪随机数,这些函数可以用于各种应用程序,如游戏、密码学、模拟等。以下是一些PHP中常用的生成随机数的函数:1、rand()函数:生成一个指定范围内的随机整数。例如
php中count()函数的作用?PHP中count()函数表示:计算数组中元素的个数,或者计算对象中属性的个数;计算数组元素个数示例:<?php$arr = array("baidu", "google", "soso");echo count($arr);//结果:3?>计算对象中的属性个数示例:<?phpclass Person{ publi
用自己的语言说出php中数组的常用函数和用法?array_filter:过滤数组中的无效元素,可以使用回调函数过滤array_map:使用回调函数依次处理所有元素implode:将一维数组转为特定符号隔开的字符串,explode: 将特定符号隔开的字符串转为一维数组sort/ksort:将数组进行升序排序array_unique:将数组元素去重array
用自己的语言说出php中数组的常用函数和用法?array_filter:过滤数组中的无效元素,可以使用回调函数过滤array_map:使用回调函数依次处理所有元素implode:将一维数组转为特定符号隔开的字符串,explode: 将特定符号隔开的字符串转为一维数组sort/ksort:将数组进行升序排序array_unique:将数组元素去重array
编写自定义函数实现1到100的偶数累加请用php程序实现// 第一次写php 花3分钟看了一下语法 不知道对不对<?phpfunction sum(){ $var = 0; for ($i=1; $i<=100; $i++) { if ($i % 2 == 0); $var += $i; } return $var
PHP怎么把多个数组揉成一个json字符串?<?php//创建数组$array=array("name"=>"Hza","age"=>21);//数组转化为json格式echojson_encode($array);echo"<br/>";//创建类classStudent{public$na
php随机数函数在PHP中,随机数(RandomNumber)是指一组伪随机数(Pseudo-randomNumber),即看起来随机的数字序列,但实际上是由一个算法生成的。PHP提供了一些内置函数,可以用来生成伪随机数,这些函数可以用于各种应用程序,如游戏、密码学、模拟等。以下是一些PHP中常用的生成随机数的函数:1、rand()函数:生成一个指定范围内的随机整数。例如
2024-06-19 10:52:25
2024-04-10 07:43:02
2024-07-01 01:27:11
2024-06-02 02:36:32
2023-12-24 20:21:11
2024-07-21 07:55:08