(PECL bbcode >= 0.10.2)
bbcode_set_flags — تعیین یا تغییر گزینههای پارسر
تعیین یا تغییر گزینههای پارسر
منبع BBCode_Container بازگردانده شده توسط bbcode_create().
پرچم تعیین شده برای گزینههای bbcode_container
یکی از ثابتهای BBCODE_SET_FLAGS_* برای تعیین/از حالت تعیین خارج کردن پرچم به خصوص یا جایگزینی پرچم با پرچمهای دیگر.
Returns TRUE on success or FALSE on failure.
Example #1 استفاده اصلیbbcode_set_flags()
<?php
/*
* Preparing RuleSet
*/
$arrayBBCode=array(
'b'=> array('type'=>BBCODE_TYPE_NOARG,
'open_tag'=>'<b>', 'close_tag'=>'</b>'),
'u'=> array('type'=>BBCODE_TYPE_NOARG,
'open_tag'=>'<u>', 'close_tag'=>'</u>'),
'i'=> array('type'=>BBCODE_TYPE_NOARG,
'open_tag'=>'<i>', 'close_tag'=>'</i>'),
);
/*
* Paired incorrectly nested BBCode
*/
$text="[i] Parser [b] Auto Correction [/i] at work [/b]\n";
$BBHandler=bbcode_create($arrayBBCode);
echo bbcode_parse($BBHandler,$text);
// Enabling reopening of automaticaly closed elements
bbcode_set_flags($BBHandler,BBCODE_CORRECT_REOPEN_TAGS,
BBCODE_SET_FLAGS_SET);
echo bbcode_parse($BBHandler,$text);
/*
* Unpaired incorrectly nested BBCode
*/
$text="[i] Parser [b] Auto Correction [/i] at work\n";
echo bbcode_parse($BBHandler,$text);
// Enabling automatic close of pending tags
bbcode_set_flags($BBHandler,
BBCODE_CORRECT_REOPEN_TAGS|BBCODE_AUTO_CORRECT,
BBCODE_SET_FLAGS_SET);
echo bbcode_parse($BBHandler,$text);
?>
The above example will output:
<i> Parser <b> Auto Correction </b></i> at work <i> Parser <b> Auto Correction </b></i><b> at work </b> <i> Parser [b] Auto Correction </i> at work <i> Parser <b> Auto Correction </b></i><b> at work </b>