Re: [討論] & new

看板PHP作者 (小殘)時間15年前 (2010/04/05 14:31), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
找到一個差異 <?php class SomeClass{ ... } function func() { global $sc; $sc =& new SomeClass; } function func2() { global $sc; $sc = new SomeClass; } func(); var_dump($sc); // NULL func2(); var_dump($sc); // object(SomeClass)#1 (0) { } ?> func()無法成功建立global的$sc, 可能如我所說的 $sc =& new SomeClass; 相當於 $tmp = new SomeClass; $sc =& $tmp; 然後$tmp是區域變數, 離開scope之後就變成NULL ※ 引述《emn178 (小殘)》之銘言: : 看到一段code大概長這樣 : class SomeClass{ : ... : } : $sc =& new SomeClass; : . : . : 一般用 : $sc = new SomeClass; : 就可以建立物件了, 不知道多加一個&的用意為何? : 我猜測程式流程應該相當於這樣 : $tmp = new SomeClass; : $sc =& $tmp; : 不過object本來就pass by ref : 所以不知道為何這樣寫啊 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.74.77
文章代碼(AID): #1BkOF0eS (PHP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
2
3
15年前, 04/04
完整討論串 (本文為第 2 之 2 篇):
2
3
15年前, 04/04
文章代碼(AID): #1BkOF0eS (PHP)