Maybe punbb use xml to make user easy to use it (just install and uninstall)
Yes - it's easy to install. In seccond solution it is still easy. You can add php files to your extensions directory, and include them using
require $ext_info['path'].'/your_file_path.php
I'll give more detailed example
Solution 1 all code in one file :
punbb/extensions/extension1/manifest.xml
<hook id="some_hook_id"><![CDATA[
php_code_line_1;
php_code_line_2;
php_code_line_3;
php_code_line_4;
php_code_line_5;
php_code_line_6;
php_code_line_7;
]]></hook>
OR Solution 2 code separated from manifest.xml :
punbb/extensions/extension1/manifest.xml
<hook id="some_hook_id"><![CDATA[
require $ext_info['path'].'/my_code.php
]]></hook>
punbb/extensions/extension1/my_code.php
<?php
php_code_line_1;
php_code_line_2;
php_code_line_3;
php_code_line_4;
php_code_line_5;
php_code_line_6;
php_code_line_7;
?>