Zend_ProgressBar.xml 3.3 KB

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