操作
Bug(バグ) #1860
未完了php5.3 の環境でOpenPNE3に同梱しているPEARのライブラリを読み込んだ際にエラーになる
開始日:
2010-12-29
期日:
進捗率:
0%
予定工数:
3.6 で発生するか:
Yes
3.8 で発生するか:
Unknown (未調査)
説明
現象¶
PEAR の Calendar ライブラリを読み込むと発生
Deprecated: Assigning the return value of new by reference is deprecated in /opt/local/apache2/htdocs/OpenPNE3/lib/vendor/PEAR/Calendar/Month/Weekdays.php on line 132 Deprecated: Assigning the return value of new by reference is deprecated in /opt/local/apache2/htdocs/OpenPNE3/lib/vendor/PEAR/Calendar/Calendar.php on line 460
原因¶
オブジェクトを参照渡しにしている箇所がある PHP 5.3 ではエラーになる
[urabe@mac PEAR]$ ack -a "&( *?)new" Amazon/HTTP/Request.php 110: * $a = &new HTTP_Request('http://www.yahoo.com/'); 402: $this->_url = &new Net_URL($url, $this->_useBrackets); 720: $this->_sock =& new Net_Socket(); 733: $this->_response = &new HTTP_Response($this->_sock, $this->_listeners); 778: $this->_url = &new Net_URL($redirect); Amazon/Services/AmazonECS4.php 1060: $http = &new HTTP_Request($url); 1087: $xml = &new XML_Unserializer(); Amazon/XML/Parser.php 576: $err = &new XML_Parser_Error($msg, $ecode); Amazon/XML/Unserializer.php 236: * $unserializer = &new XML_Unserializer(); 689: $value['value'] = &new $classname; 691: $value['value'] = &new $this->options[XML_UNSERIALIZER_OPTION_DEFAULT_CLASS]; 850: $this->_parser = &new XML_Parser($this->options[XML_UNSERIALIZER_OPTION_ENCODING_SOURCE], 'event', $this->options[XML_UNSERIALIZER_OPTION_ENCODING_TARGET]); Calendar/Calendar.php 460: $this->validator = & new Calendar_Validator($this); (略)
修正内容¶
参照渡しを使っているPERAのバージョンをあげて対処が可能なものは対処して、使っていないようなライブラリは削除でいいかと考えられます
操作