Zend_ProgressBar.xml 3.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 20827 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.progressbar.introduction" xmlns:xi="http://www.w3.org/2001/XInclude">
  5. <title>Zend_ProgressBar</title>
  6. <sect2 id="zend.progressbar.whatisit">
  7. <title>Introduction</title>
  8. <para>
  9. <classname>Zend_ProgressBar</classname> est un composant pour créer et mettre à
  10. jour les barres de progression dans différents environnements. Il consiste en un backend
  11. unique, qui affiche la progression au travers de l'un des multiples adaptateurs. A
  12. chaque mise à jour, il prend un chemin absolu et un message d'état, et appelle ensuite
  13. l'adaptateur avec certaines valeurs précalculées comme le pourcentage et le temps
  14. restant estimé.
  15. </para>
  16. </sect2>
  17. <sect2 id="zend.progressbar.basic">
  18. <title>Utilisation basique de Zend_Progressbar</title>
  19. <para>
  20. <classname>Zend_ProgressBar</classname> est assez simple d'utilisation. Vous créez
  21. simplement une nouvelle instance de <classname>Zend_Progressbar</classname>, en
  22. définissant des valeurs minimum et maximum, et en choisissant un adaptateur pour
  23. afficher les données. Si vous voulez travailler avec un fichier, vous pouvez faire comme
  24. ceci :
  25. </para>
  26. <programlisting language="php"><![CDATA[
  27. $progressBar = new Zend_ProgressBar(0, $fileSize, $adapter);
  28. while (!feof($fp)) {
  29. // Faire quelque chose
  30. $progressBar->update($currentByteCount);
  31. }
  32. $progressBar->finish();
  33. ]]></programlisting>
  34. <para>
  35. Dans un premier temps, une instance de <classname>Zend_ProgressBar</classname>,
  36. avec une valeur minimum de 0, une valeur maximum correspondant à la taille totale du
  37. fichier et un adaptateur spécifique. Ensuite on travaille avec le fichier et à chaque
  38. boucle la barre de progression est mise à jour avec le nombre d'octets courant. A la fin
  39. de la boucle, le statut de la barre de progression est réglé à terminé.
  40. </para>
  41. <para>
  42. <classname>Zend_ProgressBar</classname> possède aussi une méthode
  43. <methodname>refresh()</methodname> qui recalcule le temps restant estimé et met à jour l'adaptateur.
  44. Ceci est pratique quand il n'y a aucune donnée à mettre à jour mais que vous souhaitez
  45. que la barre de progression soit mise à jour.
  46. </para>
  47. </sect2>
  48. <sect2 id="zend.progressbar.adapters">
  49. <title>Adaptateurs standard</title>
  50. <para>
  51. <classname>Zend_ProgressBar</classname> est fourni avec les deux adaptateurs
  52. suivants : <itemizedlist mark="opencircle">
  53. <listitem>
  54. <para>
  55. <xref linkend="zend.progressbar.adapter.console" />
  56. </para>
  57. </listitem>
  58. <listitem>
  59. <para>
  60. <xref linkend="zend.progressbar.adapter.jspush" />
  61. </para>
  62. </listitem>
  63. <listitem>
  64. <para>
  65. <xref linkend="zend.progressbar.adapter.jspull" />
  66. </para>
  67. </listitem>
  68. </itemizedlist>
  69. </para>
  70. <xi:include href="Zend_ProgressBar_Adapter_Console.xml" />
  71. <xi:include href="Zend_ProgressBar_Adapter_JsPush.xml" />
  72. <xi:include href="Zend_ProgressBar_Adapter_JsPull.xml" />
  73. </sect2>
  74. </sect1>