Zend_View-Helpers-HtmlObject.xml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <sect3 id="zend.view.helpers.initial.object">
  2. <title>Helpery HTML Object</title>
  3. <para>
  4. Element HTML <code><![CDATA[<object>]]></code> używany jest do
  5. wstawiania do kodu strony takich elementów interaktywnych jak Flash czy
  6. QuickTime. Helpery te pozwalają na łatwe wstawianie tych obiektów.
  7. </para>
  8. <para>
  9. Obecnie dostępne są cztery helpery Object:
  10. </para>
  11. <itemizedlist>
  12. <listitem>
  13. <para>
  14. <code>formFlash</code>
  15. Generuje kod do wstawiania plików Flash.
  16. </para>
  17. </listitem>
  18. <listitem>
  19. <para>
  20. <code>formObject</code>
  21. Generuje kod do wstawiania własnego obiektu
  22. </para>
  23. </listitem>
  24. <listitem>
  25. <para>
  26. <code>formPage</code>
  27. Generuje kod do wstawiania innych stron (X)HTML.
  28. </para>
  29. </listitem>
  30. <listitem>
  31. <para>
  32. <code>formQuicktime</code>
  33. Generuje kod do wstawiania plików QuickTime.
  34. </para>
  35. </listitem>
  36. </itemizedlist>
  37. <para>
  38. Wszystkie te helpery mają podobny interfejs. Z tego powodu w dokumentacji
  39. pokażemy przykłady tylko dwóch z nich.
  40. </para>
  41. <example id="zend.view.helpers.initial.object.flash">
  42. <title>Helper Flash</title>
  43. <para>
  44. Dołączanie plików Flash do twojej strony jest bardzo łatwe. Jedynym
  45. wymaganym argumentem jest adres URI pliku.
  46. </para>
  47. <programlisting role="php"><![CDATA[
  48. <?php echo $this->htmlFlash('/path/to/flash.swf'); ?>
  49. ]]>
  50. </programlisting>
  51. <para>
  52. Wyświetli to następujący kod HTML:
  53. </para>
  54. <programlisting role="html"><![CDATA[
  55. <object data="/path/to/flash.swf"
  56. type="application/x-shockwave-flash"
  57. classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
  58. codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab">
  59. </object>
  60. ]]>
  61. </programlisting>
  62. </example>
  63. <para>
  64. Dodatkowo możesz określić atrybuty, parametry i zawartość jaka ma być
  65. zrenderowana wraz z obiektem <code><![CDATA[<object>]]></code>. Zostanie
  66. do zademonstrowane za pomocą helpera <code>htmlObject</code>.
  67. </para>
  68. <example id="zend.view.helpers.initial.object.object">
  69. <title>Konfigurowanie obiektu poprzez przekazanie dodatkowych argumentów</title>
  70. <para>
  71. Pierwszy argument w helperze jest zawsze wymagany. Określa on adres
  72. URL zasobu, który chcesz dołączyć do dokumentu (X)HTML. Drugi
  73. argument jest wymagany tylko w helperze <code>htmlObject</code>.
  74. Inne helpery posiadają poprawną domyślną wartość dla tego argumentu.
  75. Trzeci argument jest używany do przekazywania atrybutów do obiektu
  76. elementu. Akceptuje on tablicę par klucz-wartość. Przykładem
  77. mogą być atrybuty <code>classid</code> oraz <code>codebase</code>.
  78. Czwarty argument przyjmuje także tylko tablice elementów w postaci
  79. klucz-wartość i używa ich do elementów <code><![CDATA[<param>]]></code>.
  80. Ostatni argument umożliwia przekazanie dodatkowej zawartości do obiektu.
  81. Zobacz przykład używający wszystkich argumentów.
  82. </para>
  83. <programlisting role="php"><![CDATA[
  84. echo $this->htmlObject(
  85. '/path/to/file.ext',
  86. 'mime/type',
  87. array(
  88. 'attr1' => 'aval1',
  89. 'attr2' => 'aval2'
  90. ),
  91. array(
  92. 'param1' => 'pval1',
  93. 'param2' => 'pval2'
  94. ),
  95. 'some content'
  96. );
  97. /*
  98. Spowoduje to wyświetlenie:
  99. <object data="/path/to/file.ext" type="mime/type"
  100. attr1="aval1" attr2="aval2">
  101. <param name="param1" value="pval1" />
  102. <param name="param2" value="pval2" />
  103. some content
  104. </object>
  105. */
  106. ]]>
  107. </programlisting>
  108. </example>
  109. </sect3>