PHP 有什麼奇技淫巧?

來源:互聯網
上載者:User

回複內容:

自從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;
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.