字符串、URL地址操作、获取机器字长

字符串和URL地址操作
$array=array("name"=>"name1","pass"=>"pass1");
echo http_build_query($array);  
//name=name1&pass=pass1 //多维数组都可以操作
parse_str(http_build_query($array),$str);  //多维数组都可以操作
print_r($str); 
//Array ( [name] => name1 [pass] => pass1 )

$url = 'http://www.example.com/path?googleguy=googley&a=1';
print_r(parse_url($url));
//Array ( [scheme] => http [host] => www.example.com [path] => /path [query] => googleguy=googley&a=1 )
 
 
 
 
 
print_r(get_object_vars($this)); //在对象内部
打印的是对象内部的公共属性(public)

$test = new Test();
print_r(get_object_vars($test)); //在对象外部
打印的是对象内部的公共属性(public),保护属性(protected),私有属性(private)
 
 
function &test()
{
static $b=0;//申明一个静态变量
$b=$b+1;
echo $b;
return $b;
}
$a=test();//这条语句会输出 $b的值 为1
$a=5;
$a=test();//这条语句会输出 $b的值 为2
$a=&test();//这条语句会输出 $b的值 为3
$a=5;
$a=test();//这条语句会输出 $b的值 为6
$a=test()方式调用函数,只是将函数的值赋给$a而已, 而$a做任何改变 都不会影响到函数中的$b.
而通过$a=&test()方式调用函数呢, 他的作用是将return $b中的 $b变量的内存地址与$a变量的内存地址,
指向了同一个地方. 即产生了相当于这样的效果($a=&b;) 所以改变$a的值,也同时改变了$b 的值 ,所以在执行了:
$a=&test(); $a=5; 以后,$b的值变为了5 ......
 

// 获取机器字长
function bit_of_machine_pf() {
    if (!is_int(32768))
        return 16;
    else if (!is_int(2147483648))
        return 32;
    else
        return 64;
}
// 获取int长度
function byte_of_int_pf() {
    return (int) (bit_of_machine_pf() / 8);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值