Loading
0

PHP 函数传递基本数据类型和数组的内存传递方式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
//屏蔽程序 notice 级错误
error_reporting(E_ALL^E_NOTICE);
//如果给函数传递的是基本数据类型,如整数、小数、布尔、字符等时,在默认的情况下是传递的值;
//如果你希望传入地址,则可以用一下方法:
function test(&$n) 
//加上&符号表示传入的是地址,若改变此值则所对应地址的值也会改变;
//若没有&符号,仅仅是传值,若在函数中对该值进行改变,仅仅是这个值改变,其所对应地址的值没有改变,即该值的改变仅仅能影响函数内部,出了此函数,该值将保持原值不变
{
	echo "传入地址对应值为:".$n."<br/>";
	$n+=1;
}
//调用以上函数
$a=100;
test($a);
echo $a."<br/>"; //有&符号打印101,没有&符号打印100
//在php中如果,给一个函数传递的是数组,则默认情况下是传值(拷贝了新的数组),如果希望传入地址,则应当,&$数组名
$a1=array(1,3,900);
$a2=array(56,90,100);
$arr=array($a1,$a2,6);
 foreach($arr as $k=>$k_v)
{
	echo "$k=>$k_v";
	echo "<br>";
} 
 
print_r($arr); 
echo "<br>";
?>
欢迎分享本文,转载请保留出处!—重蔚自留地 站长邮箱:admin@cwhello.com