Zend_ProgressBar_Adapter_Console.xml 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect3 id="zend.progressbar.adapter.console">
  5. <title>Zend_ProgressBar_Adapter_Console</title>
  6. <para>
  7. <classname>Zend_ProgressBar_Adapter_Console</classname> ist ein Textbasierter Adater für
  8. Terminals. Er kann automatisch die Terminalbreite erkennen unterstützt aber auch eigene
  9. Breiten. Kann kann definieren welche Elemente mit dem Fortschrittsbalken angezeigt werden
  10. und auch deren Reihenfolge ändern. Man kann auch den Stil des Fortschrittsbalkens selbst
  11. definieren.
  12. </para>
  13. <note>
  14. <title>Automatische Breitenerkennung der Konsole</title>
  15. <para>
  16. <code>shell_exec</code> wird benötigt damit dieses Feature auf *nix basierenden Systemen
  17. funktioniert. Auf Windows, ist die Terminalbreite immer auf 80 Zeichen begrenzt, sodas
  18. dort keine Erkennung notwendig ist.
  19. </para>
  20. </note>
  21. <para>
  22. Man kann auch die Optionen des Adapters entweder über die <code>set*</code> Methoden oder
  23. durch die Übergabe eines Arrays, oder einer Instanz von <classname>Zend_Config</classname>,
  24. an den Constructor mit dem Optionen als ersten Parameter. Die möglichen Optionen sind:
  25. </para>
  26. <itemizedlist>
  27. <listitem>
  28. <para>
  29. <code>outputStream</code>: Ein anderer Ausgabe-Stream wenn man nicht auf STDOUT
  30. streamen will. Kann jeder andere Stream wie <code>php://stderr</code> oder ein Pfad
  31. zu einer Datei sein.
  32. </para>
  33. </listitem>
  34. <listitem>
  35. <para>
  36. <code>width</code>: Entweder ein Integer oder die Konstante
  37. <constant>AUTO</constant> von <classname>Zend_Console_ProgressBar</classname>.
  38. </para>
  39. </listitem>
  40. <listitem>
  41. <para>
  42. <code>elements</code>: Entweder <constant>NULL</constant> für Standard oder ein
  43. Array mit zumindest einer der folgenden Konstanten von
  44. <classname>Zend_Console_ProgressBar</classname> als Wert:
  45. </para>
  46. <itemizedlist>
  47. <listitem>
  48. <para>
  49. <constant>ELEMENT_PERCENT</constant>: Der aktuelle Wert in Prozent.
  50. </para>
  51. </listitem>
  52. <listitem>
  53. <para>
  54. <constant>ELEMENT_BAR</constant>: Die sichtbare Begrenzung welche den
  55. Prozentwert anzeigt.
  56. </para>
  57. </listitem>
  58. <listitem>
  59. <para>
  60. <constant>ELEMENT_ETA</constant>: Die automatisch berechnete ETA. Das
  61. Element wird zuerst nach fünf Sekunden angezeigt, weil es während dieser Zeit
  62. nicht möglich ist korrekte Ergebnisse zu berechnen.
  63. </para>
  64. </listitem>
  65. <listitem>
  66. <para>
  67. <constant>ELEMENT_TEXT</constant>: Eine optionale Statusmeldung über den
  68. aktuelle Fortschritt.
  69. </para>
  70. </listitem>
  71. </itemizedlist>
  72. </listitem>
  73. <listitem>
  74. <para>
  75. <code>textWidth</code>: Breite in Zeichen des <constant>ELEMENT_TEXT</constant>
  76. Elements. Standard ist 20.
  77. </para>
  78. </listitem>
  79. <listitem>
  80. <para>
  81. <code>charset</code>: Zeichensatz des
  82. <constant>ELEMENT_TEXT</constant> Elements. Standardwert ist utf-8.
  83. </para>
  84. </listitem>
  85. <listitem>
  86. <para>
  87. <code>barLeftChar</code>: Ein String der auf der linken Seite des Zeigers des
  88. Fortschrittsbalkens verwendet wird.
  89. </para>
  90. </listitem>
  91. <listitem>
  92. <para>
  93. <code>barRightChar</code>: Ein String der auf der rechten Seite des Zeigers des
  94. Fortschrittsbalkens verwendet wird.
  95. </para>
  96. </listitem>
  97. <listitem>
  98. <para>
  99. <code>barIndicatorChar</code>: Ein String der für den Zeiger des Fortschrittsbalkens
  100. verwendet wird. Er kann auch leer sein.
  101. </para>
  102. </listitem>
  103. </itemizedlist>
  104. </sect3>