1、如果在函数中,我们不希望使用某个变量,或者是希
望彻底的不再使用某个变量,则可以使用unset(变量名
),将该变量彻底删除
$a=12;
function abc($a){
unset($a);
$a=50;
}
abc($a);
echo '$a='.$a;//the result is $a=12
2、在Php函数中我们可以给某些参数,赋一个默认的值
function abc(){
}
3、php传递变量的时候,默认是值传递,如果需要引用
(地址)传递,可以使用&变量名
---------------------------------------
位运算
二进制:逢二进一(0,1,最稳定,易于电子方式实现
,同时,通过0,1,组合可以表示任何一个数字)
三个重要概念:原码、反码、补码
1、二进制的最高位是符号位,0表示正数,1表示负数
2、正数的原码、反码、补码都一样
3、负数的反码,它的原码符号位不变,其它位取反
4、负数的补码=它的反码+1
5、0的反码,补码都是0
6、php里没有无符号数,即,php中的数都是有符号的
7、在计算机运算的时候,都是以补码的方式来运算的
即,不管一个数是正数还是负数,都要被转成补码,然
后再进行运算
php中有4个位运算:按位与&、按位或|、按位异或^、按
位取反~
按位与&:两位全为1,结果为1
按位或|:两位有一个为1,结果为1
按位异或^:两位一个为0,一个为1,结果为1
按位取反~:0->1,1->0
计算时都是要把原码转换成补码,得到结果为补码,再
转换为原码,才是最终结果
~2=?
2&3=?
2|3=?
~-5=?
13&7=?
5|4=?
-3^3=?
php中有2个移位运算:左移<<、右移>>
算术右移:低位溢出,符号位不变,并用符号位补溢出
的高位
算术左移:符号位不变,低位补0
$a=1>>2;
$b=-1>>2;
$c=1<<2;
$d=-1<<2;
3*8<---->3<<3快速得到方式
-----------------------------------------------
数组 排序 查找
在php中,数组就是关键字和值的集合
1、创建数组
第一种方式:
$arr[0]=123;
$arr[1]=1;
$arr[2]=12;
[0]--->称为下标,或者关键字
$arr[0]--->称为数组的一个元素
$arr[0]=123--->123表示该$arr[0]=元素对应的值
$arr--->这个是该数组的名称
在php数组中,每个元素存放的值可以是任意数据类型
第二种方式:
$数组名=array(值,……);
$arr=array(2,hello,4,8.9,7,8);
第三种方式:
在默认情况下,元素的下标是从0开始编号的,但是实际
上,也可以自己指定
$arr[’logo‘]='北京';
$arr[‘shb’]=33;
或
$arr=array("logo"=>"北京","shb"=>"33","hard"=>"easy");
foreach适用范围更广
注意事项:
1、如果我们创建一个数组的时候 ,没有给某个元素指
定下标,php就会自动的用目前最大的那个下标值(整数
),加上1作为该元素的下标(关键字)
2、如果我们给某个元素的下标一样,则会覆盖原来的值
3、
$arr[true]<==>$arr[1]
$arr[false]<==>$arr[0]
$arr[null]<==>$arr['']或$arr[""]
如果小数作为键值,则自动截断小数部分
4、我们通常可以使用print_r来显示整个数组的情况
5、php语言中,数组是可以动态增长的