PHP数组函数下与二维多维数组与数组的遍历(终点篇)
开始:
<?php
$str='1_2_3_4_5_6';
var_dump(explode('_',$str));
?>
以_为分隔符,把$str里面的每一个元素都输出出来

<?php
$arr=[4,5,6,7];
var_dump(join('_',$arr));
?>

吧$arr里面的间隙也就是逗号都覆盖成下划线吧_都填上下划线_
<?php
$arr=[4,5,6,7];
$a=array_slice($arr,2,2);
var_dump($a);
?>

从下标2开始,截取$arr里面的两个元素吧,包括下标2
<?php
$arr=[4,5,6,7];
var_dump(array_chunk($arr, 2));
?>

把数组分割为带有两个元素的数组块:意思是我看一下,记住了呀,兄弟们,这像是二维数组一样的吧,分成两个元素两个元素的,第一个两个元素的前面是(下标0),然后是第二个两个元素的是(下标1)哈

第一个两个元素的前面是不是下标0啊,是不是两个元素啊
里面是
第二个是一样的哈


<?php
$arr=[1];
$a=array_pad($arr, 10,5);
var_dump($a);
?>
意思哈;是
a
=
a
r
r
a
y
p
a
d
(
a=array_pad(
a=arraypad(arr, 10,5);要获取的是
a
r
r
里
面
的
元
素
,
获
取
10
个
,
原
数
组
arr里面的元素,获取10个,原数组
arr里面的元素,获取10个,原数组arr的不够的话,用5补足.
<?php
$arr = [1,2];
array_push($arr, 3);
var_dump($arr);
?>

意思是:把3添加到元素的末尾
<?php
$arr = [1,2];
var_dump(array_pop($arr));
var_dump($arr);
?>
意思是:删除数组中的最后一个元素array_pop函数哈
<?php
$arr = [1,2];
array_unshift($arr, 3);
var_dump($arr);
?>

意思是核心:把3添加到元素的开头,增加一个元素吧
<?php
$arr = [1,2];
var_dump(array_shift($arr));
var_dump($arr);
//删除数组中的第一个元素(red),并返回被删除元素的值
?>

兄弟,返回了哈2
<?php
function show(&$num){
return $num = $num * 3;
}
$arr = [1,2,3];
$a = array_map("show", $arr);
var_dump($a);
?>
记住了哈,这是返回的

<?php
function show(&$num){
$num = $num * 3;
}
$arr = [1,2,3];
$a = array_map("show", $arr);
var_dump($a);
?>

记住哈,兄弟们,带引用的话,不是复制哈,是原值哈
我举个例子把:
<?php
function func1($a){
$a = $a + 1;
}
function func2(&$a) {
$a = $a + 1;
}
$sample = 1;
func1($sample);
echo $sample; // 输出 1
echo "<br />";
$sample = 1;
func2($sample);
echo $sample; // 输出 2
?>

<?php
function show(&$num){
return $num = $num * 3;
}
$arr = [1,2,3];//对数组中的每个元素应用用户自定义函数:
var_dump(array_walk($arr, "show"));
?>

可以应用的啊,自定义函数可以执行哈
遍历:
意思是:foreach($arr as KaTeX parse error: Expected 'EOF', got '&' at position 6: key=>&̲val){遍历的数组是
a
r
r
,
每
一
次
都
遍
历
键
名
与
键
值
哈
,
比
人
arr,每一次都遍历键名与键值哈,比人
arr,每一次都遍历键名与键值哈,比人i=0那时候的键名与键值哈
这时候符合条件就重新开始把
if($val == '张三'){
continue;
}
记住哈,这时候遍历的是大括号外的哈记住哈!!!原数组哈
var_dump($arr);
<?php
$arr = [
'name' => "张三",
'age' => 20
];
foreach($arr as $key=>&$val){
if($val == '张三'){
continue;
}
$val = "李四";
echo $key, '-', $val,"<br/>";
}
var_dump($arr);
?>
[1,2,3],:00 01 02
[3,4],:10 11
[5,6,7]:20 21 22
$a = [
[1,2,3],
[3,4],
[5,6,7]
];
$sum = 0;
for($i = 0; $i <count($a); $i++){//然后遍历把,算出总数count($a)8个
$sum += count($a[$i]);//因为前面有count所以算出个数的所以为8啦
}
echo $sum;

<?php
$arr = [1,2,3];
$arr = [
[1,2,3],
[4,5,6]
];
$info = ['name' => '张三', 'age' => 20];
$info = [
['name' => '张三', 'age' => 20],
['name' => '李四', 'age' => 21],
];
var_dump($info[0]['name']);
var_dump($info[1]['age']);

好了,不说了按照我前面的理解就行了哈,谢谢大家,拜拜

浙公网安备 33010602011771号