当前位置:Gxlcms > PHP教程 > PHP有什么奇技淫巧?

PHP有什么奇技淫巧?

时间:2021-07-01 10:21:17 帮助过:2人阅读

回复内容:

自从PHP玩闭包后,大家一口气跳五楼,不费劲。


1、基础:一句话实现定义一个函数并立即调用
大家在JavaScript里经常这么搞,因为变量污染是个不可容忍的事儿。但是PHP里如何实现这样的功能?一个可行方法是:
call_user_func(function(){
        echo "hello,world";
});
@陈乏 还有一个解决办法的哈。


class A
{
    protected function pro()
    {
        return "pro";
    }

    public function pub()
    {
        return "pub";
    }
}

$a = new A();
$ext = function () {
    var_dump($this);
    // var_dump($this->pro()); //Error: Call to protected method A::pro() 
    var_dump($this->pub());
};
$ext = $ext->bindTo($a);

var_dump($ext());

$b=3;
switch(1){
    case $b==3:
        echo "fuck";
        break;
}
?>

function callback($callback) {  
    $callback();  
} 
$obj = (object) "php aaa";  
$callback = function () use ($obj) {  
    print "This is a closure use object, msg is: {$obj->scalar}. 
"
; }; $obj->scalar = "php bbb"; //$obj = (object) "php bbb"; callback($callback);
C语言有趋向于运算符 -->,这个 PHP 也有,就不说了。

补充一个:在 PHP 源代码中可以直接输入网址,不需要注释(黑魔法):

    http://www.zhihu.com
?>
奇技淫巧这个咋说呢, 玩玩还可以, 可千万别在实际项目中用, 贡献俩个吧:
交换俩个值:
list($b, $a) = array($a, $b);
$a = array($b, $b = $a)[0]; 当然是神奇的BOM头啦,不知道搞的多少PHP初学者睡不好觉 Quora 的列表
What are some cool PHP tricks? XML字符串转数组
$xmlObj = simplexml_load_string($xmlStr);
$xmlArr = json_decode(json_encode($xmlObj) , true);
1. stdClass();
$obj = new stdClass;
$obj->a = 1;
$obj->b = 2;

人气教程排行