1 <?xml version="1.0" encoding="UTF-8"?>
3 <!-- EN-Revision: 19777 -->
4 <sect1 id="zend.markup.getting-started">
5 <title>さあ始めましょう</title>
8 これは <classname>Zend_Markup</classname> BBCode パーサーと <acronym>HTML</acronym>
9 レンダラーを用いる <classname>Zend_Markup</classname> を始めるためのガイドです。
10 他のパーサーやレンダラーに適用できる原則です。
13 <example id="zend.markup.getting-started.basic-usage">
14 <title>基本的な Zend_Markup 使用法</title>
17 まず初めに <methodname>Zend_Markup::factory()</methodname> メソッドを用いて、
18 <classname>Zend_Markup_Renderer_Html</classname> オブジェクトを具象化します。
19 <classname>Zend_Markup_Parser_Bbcode</classname> オブジェクトがレンダラーに
24 その後、 <methodname>render()</methodname> メソッドを BBCode から
25 <acronym>HTML</acronym> の断片に変換するために使用します。
28 <programlisting language="php"><![CDATA[
29 // Zend_Markup_Parser_BbCode を自身のパーサーとして、
30 // Zend_Markup_Renderer_Html のインスタンスを生成します。
31 $bbcode = Zend_Markup::factory('Bbcode');
33 echo $bbcode->render('[b]bold text[/b] and [i]cursive text[/i]');
34 // 出力: '<strong>bold text</strong> and <em>cursive text</em>'
38 <example id="zend.markup.getting-started.complicated-example">
39 <title>Zend_Markup のより複雑な例</title>
42 今回、上記と同様なことを正確に行いますが、より複雑な BBCode の例です。
45 <programlisting language="php"><![CDATA[
46 $bbcode = Zend_Markup::factory('Bbcode');
55 echo $bbcode->render($input);
59 <li>Zend Framework</li>
66 <example id="zend.markup.getting-started.incorrect-input">
67 <title>不正確な入力でのプロセス</title>
70 BBCode のようなマークアップの簡潔な解析とレンダリングの側面から、
71 <classname>Zend_Markup</classname> は誤った入力も扱えます。大抵の BBCode
72 処理機構は全ての入力に対し <acronym>XHTML</acronym> での正しい出力を行えません。
73 <classname>Zend_Markup</classname> は、
74 不正確なネストや閉じられていない閉じタグを訂正します:
77 <programlisting language="php"><![CDATA[
78 $bbcode = Zend_Markup::factory('Bbcode');
80 echo $bbcode->render('some [i]wrong [b]sample [/i] text');
81 // '[b]' は決して閉じられておらず、また不正確にネストされていることに注意しましょう。
82 // それにもかかわらず、 Zend_Markup は以下のように正確にレンダリングします:
83 // some <em>wrong <strong>sample </strong></em><strong> text</strong>