Manuel PHP

bbcode_set_arg_parser

(No version information available, might be only in CVS)

bbcode_set_arg_parserAttache un analyseur pour gérer un autre jeu de règles

Description

bool bbcode_set_arg_parser ( resource $bbcode_container , resource $bbcode_arg_parser )

Attache un autre analyseur à bbcode_container . Cet analyseur est utilisé uniquement lors que les arguments doivent être analysés. Si cette fonction n'est pas utilisée, l'analyseur par défaut est l'analyseur lui-même.

Liste de paramètres

bbcode_container

Ressource BBCode_Container, retournée par bbcode_create().

bbcode_arg_parser

Ressource BBCode_Container, retournée par bbcode_create().

Valeurs de retour

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

Exemples

Exemple #1 Exemple avec bbcode_set_arg_parser()

  1. <?php
  2. /*
  3. * Génération des règles de BBCode pour l'analyseur principal
  4. */  
  5. $arrayBBCode=array( 
  6.    'quote'=>   array('type'=>BBCODE_TYPE_ARG, 
  7.                'open_tag'=>'<quote><h4>Source: {PARAM}</h4>', 
  8.                'close_tag'=>'</quote>', 
  9.                'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY|BBCODE_FLAGS_ARG_PARSING), 
  10.    'b'=>      array('type'=>BBCODE_TYPE_NOARG, 
  11.                'open_tag'=>'<b>', 'close_tag'=>'</b>', 
  12.                'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY), 
  13.    'u'=>      array('type'=>BBCODE_TYPE_NOARG, 
  14.                'open_tag'=>'<u>', 'close_tag'=>'</u>', 
  15.                'flags'=>BBCODE_FLAGS_SMILEYS_OFF | BBCODE_FLAGS_REMOVE_IF_EMPTY | BBCODE_FLAGS_SMILEYS_OFF), 
  16.    'i'=>      array('type'=>BBCODE_TYPE_NOARG, 
  17.                'open_tag'=>'<i>', 'close_tag'=>'</i>', 
  18.                'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),  
  19. );  
  20. /*
  21. * Génération des règles de BBCode pour les arguments
  22. */  
  23. $arrayBBCode_arg=array( 
  24.    'b'=>      array('type'=>BBCODE_TYPE_NOARG, 
  25.                'open_tag'=>'<b class="sub">', 'close_tag'=>'</b>', 
  26.                'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY), 
  27.    'u'=>      array('type'=>BBCODE_TYPE_NOARG, 
  28.                'open_tag'=>'<u>', 'close_tag'=>'</u>', 
  29.                'flags'=>BBCODE_FLAGS_SMILEYS_OFF | BBCODE_FLAGS_REMOVE_IF_EMPTY | BBCODE_FLAGS_SMILEYS_OFF), 
  30.    'i'=>      array('type'=>BBCODE_TYPE_NOARG, 
  31.                'open_tag'=>'<i>', 'close_tag'=>'</i>', 
  32.                'flags'=>BBCODE_FLAGS_REMOVE_IF_EMPTY),  
  33. );  
  34. /*
  35. * Texte qui sera traité
  36. */  
  37. $text=<<<EOF
  38. [quote="Test"]
  39. Foo :)
  40. [/quote]
  41. Bar example :) :)
  42. EOF;  
  43. /*
  44. * Initialisation des deux analyseurs BBcode
  45. */  
  46. $BBHandler=bbcode_create($arrayBBCode);  
  47. $BBArgHandler=bbcode_create($arrayBBCode_arg);  
  48. /*
  49. * Configuration des deux analyseurs
  50. */  
  51. bbcode_set_flags($BBHandler, 
  52.             BBCODE_CORRECT_REOPEN_TAGS|BBCODE_DEFAULT_SMILEYS_ON|BBCODE_ARG_DOUBLE_QUOTE| 
  53.             BBCODE_ARG_SINGLE_QUOTE|BBCODE_ARG_HTML_QUOTE,BBCODE_SET_FLAGS_SET);  
  54. bbcode_set_flags($BBArgHandler, 
  55.             BBCODE_CORRECT_REOPEN_TAGS|BBCODE_DEFAULT_SMILEYS_ON|BBCODE_ARG_DOUBLE_QUOTE| 
  56.             BBCODE_ARG_SINGLE_QUOTE|BBCODE_ARG_HTML_QUOTE,BBCODE_SET_FLAGS_SET);  
  57. /*
  58. * Configuration de $BBArgHandler comme analyseur d'arguments
  59. */  
  60. bbcode_set_arg_parser($BBHandler,$BBArgHandler);  
  61. /*
  62. * Ajout de la gestion des Smileys
  63. */  
  64. bbcode_add_smiley($BBHandler, ":)", "<img src=\"smiley.gif\" alt=\":)\" />");  
  65. /*
  66. * Utilisation de l'analyseur principal
  67. */  
  68. echo bbcode_parse($BBHandler,$text);  
  69. ?> 

L'exemple ci-dessus va afficher :

<quote><h4>Source: <b class="sub">Test</b></h4> Foo <img src="smiley.gif" alt=":)" /> </quote> <b>Bar example :)</b> <img src="smiley.gif" alt=":)" />


Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Bretagne - php - Moto - Kit graphique