Re: [PHP] exception throw from __autoload could not be catched on php 5.3.1
On Fri, 2010-01-29 at 13:02 +0800, Eric Lee wrote: Hi php-dev pros, I got an issue about catching exception throw from __autoload on php 5.3.1. The manual state that exception throw from __autoload could be catched with try.. catch statement same as the normal flow. But I'can archive that even I have copied the same sample code from the manual. Here are the code segment. [[[ function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ]]] Are there anyone experienced this or not ? Thanks in advance ! Regards, Eric, What version of PHP are you using? The example will only work on PHP version 5.3.0 and above Thanks, Ash http://www.ashleysheridan.co.uk
Re: [PHP] exception throw from __autoload could not be catched on php 5.3.1
On Fri, 2010-01-29 at 13:02 +0800, Eric Lee wrote: Hi php-dev pros, I got an issue about catching exception throw from __autoload on php 5.3.1. The manual state that exception throw from __autoload could be catched with try.. catch statement same as the normal flow. But I'can archive that even I have copied the same sample code from the manual. Here are the code segment. [[[ function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ]]] Are there anyone experienced this or not ? Thanks in advance ! Regards, Eric, Sorry, ignore that, I see you're running 5.3.1, which should be fine for running the example. I do notice that you've got [[[ and ]]] in-place of ?php and ?, was that intentional? Thanks, Ash http://www.ashleysheridan.co.uk
Re: [PHP] exception throw from __autoload could not be catched on php 5.3.1
于 2010-1-29 13:19, Ashley Sheridan 写道: On Fri, 2010-01-29 at 13:02 +0800, Eric Lee wrote: Hi php-dev pros, I got an issue about catching exception throw from __autoload on php 5.3.1. The manual state that exception throw from __autoload could be catched with try.. catch statement same as the normal flow. But I'can archive that even I have copied the same sample code from the manual. Here are the code segment. [[[ function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ]]] Are there anyone experienced this or not ? Thanks in advance ! Regards, Eric, Sorry, ignore that, I see you're running 5.3.1, which should be fine for running the example. I do notice that you've got [[[ and ]]] in-place of ?php and ?, was that intentional? Thanks, Ash http://www.ashleysheridan.co.uk Do you have any other autoload implamentaions? try testing that code segment in a single php file and dump phpinfo() to make sure you are on php 5.3.1 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP] exception throw from __autoload could not be catched on php 5.3.1
On Fri, Jan 29, 2010 at 1:19 PM, Ashley Sheridan a...@ashleysheridan.co.ukwrote: On Fri, 2010-01-29 at 13:02 +0800, Eric Lee wrote: Hi php-dev pros, I got an issue about catching exception throw from __autoload on php 5.3.1. The manual state that exception throw from __autoload could be catched with try.. catch statement same as the normal flow. But I'can archive that even I have copied the same sample code from the manual. Here are the code segment. [[[ function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ]]] Are there anyone experienced this or not ? Thanks in advance ! Regards, Eric, Sorry, ignore that, I see you're running 5.3.1, which should be fine for running the example. I do notice that you've got [[[ and ]]] in-place of ?php and ?, was that intentional? Sorry for that ! I'am too lazy !! And that's just for easy looking the code. I actually use this, ?php function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ? Regards, Eric, Thanks, Ash http://www.ashleysheridan.co.uk
Re: [PHP] exception throw from __autoload could not be catched on php 5.3.1
Hi all and thanks for Ryan, I apologize ! ! I have missed out the small class_exists call before it. Thanks. Regards, Eric, 2010/1/29 Ryan ryansu...@gmail.com 于 2010-1-29 13:19, Ashley Sheridan 写道: On Fri, 2010-01-29 at 13:02 +0800, Eric Lee wrote: Hi php-dev pros, I got an issue about catching exception throw from __autoload on php 5.3.1. The manual state that exception throw from __autoload could be catched with try.. catch statement same as the normal flow. But I'can archive that even I have copied the same sample code from the manual. Here are the code segment. [[[ function __autoload($name) { echo Want to load $name.\n; throw new Exception(Unable to load $name.); } try { $obj = new NonLoadableClass(); } catch (Exception $e) { echo $e-getMessage(), \n; } ]]] Are there anyone experienced this or not ? Thanks in advance ! Regards, Eric, Sorry, ignore that, I see you're running 5.3.1, which should be fine for running the example. I do notice that you've got [[[ and ]]] in-place of ?php and ?, was that intentional? Thanks, Ash http://www.ashleysheridan.co.uk Do you have any other autoload implamentaions? try testing that code segment in a single php file and dump phpinfo() to make sure you are on php 5.3.1