Zend_Markup-Getting-Started.xml 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.markup.getting-started">
  5. <title>Guide de démarrage avec Zend_Markup</title>
  6. <para>
  7. Ce guide pour vous aider à démarrer avec <classname>Zend_Markup</classname> utilisera le parseur BBCode
  8. et le moteur de rendu <acronym>HTML</acronym>. Les principes utilisés s'adaptent à d'autres formats.
  9. </para>
  10. <example id="zend.markup.getting-started.basic-usage">
  11. <title>Utilisation classique de Zend_Markup</title>
  12. <para>
  13. Nous allons d'abord instancier un objet <classname>Zend_Markup_Renderer_Html</classname> en utilisant
  14. la méthode <methodname>Zend_Markup::factory()</methodname>. Ceci créera aussi un objet
  15. a <classname>Zend_Markup_Parser_Bbcode</classname> qui sera ajouté à l'objet de rendu.
  16. </para>
  17. <para>
  18. Ensuite, nous utiliserons la méthode <methodname>render()</methodname> afin de convertir un bout de
  19. BBCode vers du <acronym>HTML</acronym>.
  20. </para>
  21. <programlisting language="php"><![CDATA[
  22. // Créer une instance de Zend_Markup_Renderer_Html,
  23. // avec Zend_Markup_Parser_BbCode comme parseur
  24. $bbcode = Zend_Markup::factory('Bbcode');
  25. echo $bbcode->render('[b]bold text[/b] and [i]cursive text[/i]');
  26. // Affiche: '<strong>bold text</strong> and <em>cursive text</em>'
  27. ]]></programlisting>
  28. </example>
  29. <example id="zend.markup.getting-started.complicated-example">
  30. <title>Un exemple plus complexe de Zend_Markup</title>
  31. <para>
  32. Même chose ici, mais avec un bout de BBCode plus complexe.
  33. </para>
  34. <programlisting language="php"><![CDATA[
  35. $bbcode = Zend_Markup::factory('Bbcode');
  36. $input = <<<EOT
  37. [list]
  38. [*]Zend Framework
  39. [*]Foobar
  40. [/list]
  41. EOT;
  42. echo $bbcode->render($input);
  43. /*
  44. Devrait afficher quelque chose comme:
  45. <ul>
  46. <li>Zend Framework</li>
  47. <li>Foobar</li>
  48. </ul>
  49. */
  50. ]]></programlisting>
  51. </example>
  52. <example id="zend.markup.getting-started.incorrect-input">
  53. <title>Traitement des entrées incorrectes</title>
  54. <para>
  55. En plus d'analyser et rendre des codes de type BBCode, <classname>Zend_Markup</classname>
  56. peut aussi traiter les entrées non valides. La plupart des processeurs de BBCode ne sont pas
  57. capables de rendre toute l'entrée sous forme de <acronym>XHTML</acronym> valide.
  58. <classname>Zend_Markup</classname> corrige les entrées non valides et ajoute des tags de
  59. fermetures si nécessaire:
  60. </para>
  61. <programlisting language="php"><![CDATA[
  62. $bbcode = Zend_Markup::factory('Bbcode');
  63. echo $bbcode->render('some [i]wrong [b]sample [/i] text');
  64. // Remarquez que le tag '[b]' n'est pas fermé et est aussi mal niché
  65. // dans l'arbre; mais Zend_Markup propose un rendu correct:
  66. // some <em>wrong <strong>sample </strong></em><strong> text</strong>
  67. ]]></programlisting>
  68. </example>
  69. </sect1>