Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.2.4

Bug #831 Assignment to $this
Submitted: 2004-02-21 21:29 UTC
From: pear-qa at lists dot php dot net Assigned: dallen
Status: Closed Package: XML_XPath
PHP Version: 5.0.0b4 (beta4) OS: Irrelevant
Roadmaps: (Not assigned)    
Subscription  
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes. If this is not your bug, you can add a comment by following this link. If this is your bug, but you forgot your password, you can retrieve your password here.
Password:
Status:
2005-10-12 16:12 UTC
Package:
Bug Type:
Summary:
From: pear-qa at lists dot php dot net
New email:
PHP Version: Package Version: OS:

 

 [2004-02-21 21:29 UTC] pear-qa at lists dot php dot net
Description: ------------ ## from the PEAR QA team ## ## quality-assurance related ## ## PHP 5 compatibility issue ## Dear package maintainer, your package makes use of the assignement of new values to $this. This methodis possible in PHP 4 but will throw an error with PHP 5 [1]. Please take care of this issue forPHP5 compatibility reasons. Please answer to this bugreport directly through the PEAR bug tracker or the mailinglist pear-qa@lists.php.net . With kind regards, PEAR QA Team [1] http://www.php.net/ChangeLog-5.php#5.0.0b4 Reproduce code: --------------- FILE: '/php/pear/XML_XPath/XPath.php' : /php/pear/XML_XPath/XPath.php(101): $this = $result; /php/pear/XML_XPath/XPath.php(276): $this = null; FILE: '/php/pear/XML_XPath/XPath/result.php' : /php/pear/XML_XPath/XPath/result.php(508): $this = null; Expected result: ---------------- Solutions: The assignment to $this occurs mostly inside constructors (<Your_Package_Name>()). You should provide an static factory() or singleton() method for this. To provide backwards compatibility you should work around the affected code pieces. This can be done by a version check: if (version_compare(phpversion(), "5.0.0") == -1) { // assign factoried method to this for PHP 4 // $this =& <Your_Package_Name>::factory(); $this =& <Your_Package_Name>::singleton(); } else { // error handling for PHP5 // user has to use the factory()/singleton() method }

Comments

 [2004-07-11 22:57 UTC] gurugeek
Dear Maintainer, Your package xml_xpath has currently 1 open bug. We urge you to take the necessary steps to solve the reported issues at your soonest convenience. If the bug issue hasn’t been addressed yet you are kindly asked to take the necessary steps to ensure a prompt resolution of the problem. If you already addressed the reported problem feel free to change the bug status as soon as possible. Regards David Costa PEAR Quality Assurance pear-qa@lists.php.net
 [2005-05-11 12:14 UTC] amol_dhormale at yahoo dot co dot in
Dear package maintainer, The package XML_XPath makes use of the assignement of new values to $this. This methodis possible in PHP 4 but will throw an error with PHP 5 . The same bug was there in phpDocumentor but now it's been solved in 1.3.10 version. Please try to fix this. With kind regards, Amol Dhormale
 [2005-10-12 16:12 UTC] dufuz
Thank you for your bug report. This issue has been fixed in the latest released version of the package, which you can download at http://pear.php.net/get/XML_XPath