2
0

Zend_Markup-Getting-Started.xml 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.markup.getting-started">
  5. <title>Beginnen mit Zend_Markup</title>
  6. <para>
  7. Dieser Beginner-Guide für <classname>Zend_Markup</classname> verwendet den BBCode Parser und
  8. den <acronym>HTML</acronym> Renderer. Die diskutierten Prinzipien können auf andere Parser
  9. und Renderer angewendet werden.
  10. </para>
  11. <example id="zend.markup.getting-started.basic-usage">
  12. <title>Grundsätzliche Verwendung von Zend_Markup</title>
  13. <para>
  14. Zuerst instanzieren wir ein <classname>Zend_Markup_Renderer_Html</classname> Objekt
  15. durch Verwendung der <methodname>Zend_Markup::factory()</methodname> Methode. Das
  16. erstellt auch ein <classname>Zend_Markup_Parser_Bbcode</classname> Objekt welches dem
  17. Renderer Objekt hinzugefügt wird.
  18. </para>
  19. <para>
  20. Danach verwenden wir die <methodname>render()</methodname> Methode um ein Teil von
  21. BBCode auf <acronym>HTML</acronym> zu konvertieren.
  22. </para>
  23. <programlisting language="php"><![CDATA[
  24. // Erstellt eine Instanz von Zend_Markup_Renderer_Html
  25. // mit Zend_Markup_Parser_BbCode als seinen Parser
  26. $bbcode = Zend_Markup::factory('Bbcode');
  27. echo $bbcode->render('[b]bold text[/b] and [i]cursive text[/i]');
  28. // Ausgabe: '<strong>bold text</strong> and <em>cursive text</em>'
  29. ]]></programlisting>
  30. </example>
  31. <example id="zend.markup.getting-started.complicated-example">
  32. <title>Ein komplizierteres Beispiel von Zend_Markup</title>
  33. <para>
  34. Jetzt wollen wir das gleiche wie zuerst machen, aber mit einem komplizierteren
  35. BBCode Markup.
  36. </para>
  37. <programlisting language="php"><![CDATA[
  38. $bbcode = Zend_Markup::factory('Bbcode');
  39. $input = <<<EOT
  40. [list]
  41. [*]Zend Framework
  42. [*]Foobar
  43. [/list]
  44. EOT;
  45. echo $bbcode->render($input);
  46. /*
  47. Sollte etwas wie das folgende ausgeben:
  48. <ul>
  49. <li>Zend Framework</li>
  50. <li>Foobar</li>
  51. </ul>
  52. */
  53. ]]></programlisting>
  54. </example>
  55. <example id="zend.markup.getting-started.incorrect-input">
  56. <title>Falsche Eingaben bearbeiten</title>
  57. <para>
  58. Neben dem einfachen Parsen und Darstellen von Markup wie BBCode, ist
  59. <classname>Zend_Markup</classname> auch in der Lage falsche Eingaben zu behandeln. Die
  60. meisten BBCode Prozessoren sind nicht in der Lage jede Eingabe zu einer gültigen
  61. <acronym>XHTML</acronym> Ausgabe auszugeben. <classname>Zend_Markup</classname>
  62. korrigiert Eingaben die falsch Verknüpft sind, und schließt auch Tags die nicht
  63. geschlossen sind:
  64. </para>
  65. <programlisting language="php"><![CDATA[
  66. $bbcode = Zend_Markup::factory('Bbcode');
  67. echo $bbcode->render('some [i]wrong [b]sample [/i] text');
  68. // Es ist zu beachten dass das '[b]' Tag nicht geschlossen ist, und auch
  69. // falsch verknüpft ist; trotzdem stellt es Zend_Markup korrakt wie folgt dar:
  70. // some <em>wrong <strong>sample </strong></em><strong> text</strong>
  71. ]]></programlisting>
  72. </example>
  73. </sect1>