bbcode_set_flags

(PECL bbcode >= 0.10.2)

bbcode_set_flagsSpécifie ou modifie des options d'analyseurs BBcode

Description

bbcode_set_flags ( resource $bbcode_container , int $flags [, int $mode = BBCODE_SET_FLAGS_SET ] ) : bool

Spécifie ou modifie des options d'analyseur BBCode.

Liste de paramètres

bbcode_container

Ressource BBCode_Container, retournée par bbcode_create().

flags

Le jeu de drapeaux qui doivent être appliquée aux options de bbcode_container

mode

Une des constantes BBCODE_SET_FLAGS_* à utiliser, ou supprimer.

Valeurs de retour

Cette fonction retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemples

Exemple #1 Exemple avec bbcode_set_flags()

<?php
/*
 * Préparation des règles
 */
$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>'),
);
/*
 * BBCode mal imbriqué
 */
$text="[i] Parser [b] Auto Correction [/i] at work [/b]\n";
$BBHandler=bbcode_create($arrayBBCode);
echo 
bbcode_parse($BBHandler,$text);
// Activation de la réouverture automatique des éléments fermés
bbcode_set_flags($BBHandler,BBCODE_CORRECT_REOPEN_TAGS
                 
BBCODE_SET_FLAGS_SET);
echo 
bbcode_parse($BBHandler,$text);

/*
 * BBCode mal imbriqué
 */
$text="[i] Parser [b] Auto Correction [/i] at work\n";
echo 
bbcode_parse($BBHandler,$text);
// Activation de la fermeture automatique des éléments ouverts
bbcode_set_flags($BBHandler,
                 
BBCODE_CORRECT_REOPEN_TAGS|BBCODE_AUTO_CORRECT
                 
BBCODE_SET_FLAGS_SET);
echo 
bbcode_parse($BBHandler,$text);
?>

L'exemple ci-dessus va afficher :

<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>