Difference between revisions of "Sven/PHP"
From Organic Design wiki
| Line 25: | Line 25: | ||
{{Info|See pages 147-153 ([http://www.oreilly.com/catalog/progphp/ Programming php]) for introspection functions for ''Objects'' in php.}} | {{Info|See pages 147-153 ([http://www.oreilly.com/catalog/progphp/ Programming php]) for introspection functions for ''Objects'' in php.}} | ||
| + | |||
| + | *[http://www.php.net/class_exists class_exists] | ||
| + | *[http://www.php.net/get_declared_classes get_declared_classes] | ||
| + | *[http://www.php.net/get_class_methods get_class_methods] | ||
| + | *[http://www.php.net/get_class_vars get_class_vars] | ||
| + | *[http://www.php.net/get_parent_class get_parent_class] | ||
Revision as of 21:53, 8 December 2007
Debugging PHP
Debuggers generally use a W:Stack trace. This can be approximated by using print and die statements in sections of code. The combination of print_r and func_get_args allows you to return an array of args that a function was called with;
print_r(func_get_args());
Casting an object of an array builds an array of the properties, mapping property names to values. e.g.
class Person {
var $name = "Fred";
var $age = 35;
}
$o = new Person;
$a = (array) $o
print_r($a);
outputs;
- Array
- (
- [name] => Fred
- [age] => 35
- )
PHP errors
To see PHP errors, add this to the very top of LocalSettings.php: <php> error_reporting(E_ALL); ini_set("display_errors", 1); </php>



