<?php $br = (php_sapi_name() == "cli")? "":"<br>"; if(!extension_loaded('bbcode')) { dl('bbcode.' . PHP_SHLIB_SUFFIX); } $module = 'bbcode'; $functions = get_extension_funcs($module); /*echo "Functions available in the test extension:$br\n"; foreach($functions as $func) { echo $func."$br\n"; }*/ echo "$br\n"; $function = 'confirm_' . $module . '_compiled'; if (extension_loaded($module)) { $obj = new $module( [ '' => [ 'type' => BBCODE::TYPE_ROOT, 'childs' => ['ul','url','img','b','i'] ], 'i' => [ 'type' => BBCODE::TYPE_NOARG //TODO: by default open tag = <KEY> and close tag = </KEY> ], 'b' => [ 'type' => BBCODE::TYPE_NOARG ], 'ul' => [ 'type' => BBCODE::TYPE_NOARG, 'childs' => [ 'li' ] ], 'li' => [ 'type' => BBCODE::TYPE_NOARG, 'parent' => 'ul', 'childs' => ['url','img','b','i'] ], 'url' => [ 'type' => BBCODE::TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'parent' => [ '', 'li', 'b', 'i' ] ] ], [ ':)' => '<img src="smiley.gif" alt=":)" />', ':(' => '<img src="sad.gif" alt=":(" />', ':D' => '<img src="happy.gif" alt=":D" />', ':p' => '<img src="tong.gif" alt=":p" />', ':|' => '<img src="special.gif" alt=":|" />', ':6:' => '<img src="six.gif" alt=":6:" />' ], BBCode::REMOVE_EMPTY ); var_dump($obj); $obj2 = new $module( [ '' => [ 'type' => BBCODE::TYPE_ROOT, 'childs' => ['ul','url','img','b','i'] ], 'i' => [ 'type' => BBCODE::TYPE_NOARG //TODO: by default open tag = <KEY> and close tag = </KEY> ], 'b' => [ 'type' => BBCODE::TYPE_NOARG ], 'ul' => [ 'type' => BBCODE::TYPE_NOARG, 'childs' => [ 'li' ] ], 'li' => [ 'type' => BBCODE::TYPE_NOARG, 'parent' => 'ul', 'childs' => ['url','img','b','i'] ], 'url' => [ 'type' => BBCODE::TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'parent' => [ '', 'li', 'b', 'i' ] ] ], [ ':)' => '<img src="smiley.gif" alt=":)" />', ':(' => '<img src="sad.gif" alt=":(" />', ':D' => '<img src="happy.gif" alt=":D" />', ':p' => '<img src="tong.gif" alt=":p" />', ':|' => '<img src="special.gif" alt=":|" />', ':6:' => '<img src="six.gif" alt=":6:" />' ], BBCode::REMOVE_EMPTY ); $obj3 = new $module( [ '' => [ 'type' => BBCODE::TYPE_ROOT, 'childs' => ['ul','url','img','b','i'] ], 'i' => [ 'type' => BBCODE::TYPE_NOARG //TODO: by default open tag = <KEY> and close tag = </KEY> ], 'b' => [ 'type' => BBCODE::TYPE_NOARG ], 'ul' => [ 'type' => BBCODE::TYPE_NOARG, 'childs' => [ 'li' ] ], 'li' => [ 'type' => BBCODE::TYPE_NOARG, 'parent' => 'ul', 'childs' => ['url','img','b','i'] ], 'url' => [ 'type' => BBCODE::TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'parent' => [ '', 'li', 'b', 'i' ] ] ], [ ':)' => '<img src="smiley.gif" alt=":)" />', ':(' => '<img src="sad.gif" alt=":(" />', ':D' => '<img src="happy.gif" alt=":D" />', ':p' => '<img src="tong.gif" alt=":p" />', ':|' => '<img src="special.gif" alt=":|" />', ':6:' => '<img src="six.gif" alt=":6:" />' ], BBCode::REMOVE_EMPTY ); $obj3 = null; unset($obj2); $obj2 = clone $obj; #var_dump(clone $obj); //var_dump(new $module(BBCode::TYPE_ARG, 'tutu')); exit; //$str = $function($module); } else { $str = "Module $module is not compiled into PHP"; } echo "$str\n"; /* array( 'b' => array( 'type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b class="sub">', 'close_tag'=>'</b>', 'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY ), 'u' => array( 'type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<u>', 'close_tag'=>'</u>', 'flags'=>BBCODE_FLAGS_SMILEYS_OFF | BBCODE_FLAGS_REMOVE_IF_EMPTY | BBCODE_FLAGS_SMILEYS_OFF ), 'i' => array( 'type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<i>', 'close_tag'=>'</i>', 'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY ) ), */