Note to self
13th August 2003
When writing an XML parsing class in PHP, don’t forget the ampersands in the following code snippet:
xml_set_element_handler($parser, array(&$this, '_tagOpen'), array(&$this, '_tagClose'));
xml_set_character_data_handler($parser, array(&$this, '_cdata'));
Failure to include them can lead to two days of debugging, frustration and hair loss. Solution found thanks to Keith’s PHP rant (which itself reads like the result of several days of hell). Roll on PHP 5, where objects are passed by reference by default.
More recent articles
- My answers to the questions I posed about porting open source code with LLMs - 11th January 2026
- Fly's new Sprites.dev addresses both developer sandboxes and API sandboxes at the same time - 9th January 2026
- LLM predictions for 2026, shared with Oxide and Friends - 8th January 2026