看看這個例子。有一行:什麼是=&在PHP中?
$client =& new xmlrpc_client('/xml-rpc', 'api.quicktate.com', 80);
$client->return_type = 'xmlrpcvals';
什麼是=&
又是什麼在$client->return_type
的->
是什麼意思?
看看這個例子。有一行:什麼是=&在PHP中?
$client =& new xmlrpc_client('/xml-rpc', 'api.quicktate.com', 80);
$client->return_type = 'xmlrpcvals';
什麼是=&
又是什麼在$client->return_type
的->
是什麼意思?
=
和&
應該在它們之間有一個空格 - 它們是兩個不同的操作符。 &
表示get a reference to this。
->
用於訪問對象成員 - 這意味着將'xmlrpcvals'分配給成員$client
。
*參見澄清
'='和'&'不需要在它們之間留有空格。 – treeface 2010-09-02 20:16:59
@treeface - 我的意思是'應該'是誤導沒有空間。我不在乎解析器是怎麼想的,我只是想着可憐的人閱讀這些代碼並試圖找出'=&'的含義。 – Skilldrick 2010-09-02 20:18:44
@treeface:是的,空間是微不足道的;然而,Skilldrick認爲''=&'不被解析器視爲一個單獨的操作符,不像'=>'這是一個單獨的操作符。 – BoltClock 2010-09-02 20:20:15
的= &分配變量的對象的引用,而不是複製它的評論。它是兩個獨立的運算符(賦值和獲取引用),但它們經常被寫在一起。
- >是成員訪問操作符;在這個例子中,它意味着獲得屬於XML-RPC客戶端的return_type。
通過引用
<?php
$a = 5;
$b =& $a;
$b = 6;
echo "a: ";
var_dump($a);
echo "b: ";
var_dump($b);
?>
輸出傳遞變量:
a: int(6)
b: int(6)
與最後一個問題的第一啓動;
什麼是 - >在$ client-> return_type是什麼意思?
- >是您用於訪問PHP中對象的屬性和方法的操作符。大多數語言(如Java或Javascript)都使用點運算符來實現相同的功能。它(可能)來自用於訪問結構成員的C語法。
然後就是第一個問題......
什麼= &?
簡短的版本是,在你的榜樣,這是一個遺蹟,你不再需要的;如果您使用PHP5,則不再需要PHP4的解酒。但請注意,這是特定於您的示例。
對於長版本,讓你真正瞭解發生了什麼事情在PHP
閱讀http://derickrethans.nl/talks/phparch-php-variables-article.pdf關於參考文獻,它是在PHP 5.3倍過時,所以不要使用它。 – 2012-01-02 00:15:34