Re: Pear DB class not PHP5 strict compatible?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Richard Davey wrote:
Hi,

   Having heard good things about the PEAR DB package I wanted to try
   it out on a new project. I'm using PHP 5.0.3, ran the go-pear and
   installed the latest version but upon including it in my script it
   brings up rafts of errors such as:

Strict Standards: Assigning the return value of new by reference is deprecated in D:\dev\php-5.0.3\PEAR\DB.php on line 470

   I run PHP with E_ALL | E_STRICT because it's the best way for me to
   catch all errors and keep my code sensible - do the Pear packages
   not also work in this environment or am I just out of luck re: the
   DB package itself?

   It included and worked fine when I switched to PHP 4, but that
   isn't an option for this project.

Best regards,

Richard Davey
PEAR uses a lot of (IMHO ugly) hacks to circumvent bugs in (very) early php versions. Back when PHP 4 was released there was a bug with assigning objects to variables, at a certain point people found out that by using $a &= new class; circumvented that bug, and didn't pose any real problem in later versions, so PEAR uses that still. As of PHP 5.0.0, this is considered bad behaviour, but since PEAR should be usable for old versions of PHP aswell, it still keeps this syntax.

I personally find most PEAR packages extremely bloated, and badly coded, but that's just a personal opinion. However, you can edit the package yourself and replace the &= new to = new :)

- tul

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux