cvs: phpdoc-cs /features commandline.xml

[email protected] ("Jakub Vrana") Sun, 07 Dec 2003 21:27:27 -0000
Newsgroups php.doc.cs
Message-ID <cvsvrana1070832447@cvsserver>
vrana		Sun Dec  7 16:27:27 2003 EDT

  Modified files:              
    /phpdoc-cs/features	commandline.xml 
  Log:
  Moved from appendices
vrana-20031207162727.txt (text/plain, 9.9 KB)
Index: phpdoc-cs/features/commandline.xml
diff -u /dev/null phpdoc-cs/features/commandline.xml:1.3
--- /dev/null	Sun Dec  7 16:27:27 2003
+++ phpdoc-cs/features/commandline.xml	Sun Dec  7 16:27:27 2003
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="iso-8859-2"?>
+<!-- EN-Revision: 1.9 Maintainer: luk Status: ready -->
+
+<!-- 
+   TODO:
+   
+     The command line options not in the
+     list, but in the -h output below:
+   
+       -e, -z
+    
+     It would be best to document these, and
+     collect more info about -c and -d!
+-->
+<chapter id="features.commandline">
+ <title>Pou¾ití PHP z pøíkazové øádky</title>
+ <para>
+  Mo¾nosti PHP pøi spou¹tìní z pøíkazové øádky pøiná¹ejí mnoho u¾itku,
+  pokud chcete ladit nebo testovat va¹e nastavení PHP, hodí se v¹ak
+  i pro pøípady, kdy byste rádi pou¾ili PHP pro jiné úèely ne¾ WWW
+  skriptování.  
+ </para>
+ <para>
+  Uvìdomte si, ¾e mù¾ete v¾dy smìrovat výstup programu PHP do vnìj¹ího
+  souboru pomocí znaku &gt;, tak¾e <literal>php -q test.php >
+  test.html</literal> vytiskne výstup <filename>test.php</filename>
+  bez HTTP hlavièek do <filename>test.html</filename> ve stejném adresáøi.  
+ </para>
+ <para>
+  Mo¾nosti pøíkazové øádky mù¾ete vyu¾ívat pouze tehdy, máte-li (spustitelný)
+  program PHP. Pokud jste zkompilovali pouze modul do serveru a nemáte na
+  poèítaèi ¾ádnou CGI verzi, nemù¾ete pøíkazovou øádku pou¾ívat.
+  Pro u¾ivatele Windows je v binárním balíèku jak serverový modul, tak
+  spustitelný soubor nazvaný <filename>php.exe</filename>.
+ </para>
+ <para>
+  Tento seznem voleb pro pøíkazovou øádku je konzistentní s PHP 4.0.6.
+  Aktuální seznam vèetnì jednoøádkových popisù mù¾ete získat pomocí parametru
+  <literal>-h</literal>. Výstup <literal>php -h</literal> by mìl vypadat
+  pøibli¾nì takto:  
+  <screen>
+<![CDATA[
+Usage: php [-q] [-h] [-s [-v] [-i] [-f <file>] |  {<file> [args...]}
+  -q             Quiet-mode.  Suppress HTTP Header output.
+  -s             Display colour syntax highlighted source.
+  -f <file>      Parse <file>.  Implies `-q'
+  -v             Version number
+  -C             Do not chdir to the script's directory
+  -c <path>      Look for php.ini file in this directory
+  -d foo[=bar]   Define INI entry foo with value 'bar'
+  -e             Generate extended information for debugger/profiler
+  -z <file>      Load Zend extension <file>.
+  -l             Syntax check only (lint)
+  -m             Show compiled in modules
+  -i             PHP information
+  -h             This help
+]]>
+  </screen>
+ </para>
+ <para>
+  Zde uvádíme nìkteré z nejdùle¾itìj¹ích voleb s detailním vysvìtlením.  
+ </para>
+ <para>
+  <table>
+   <title>Volby pro pøíkazovou øádku</title>
+   <tgroup cols="2">
+    <thead>
+     <row>
+      <entry>Volba</entry>
+      <entry>Popis</entry>
+     </row>
+    </thead>
+    <tbody>
+     <row>
+      <entry>-q</entry>
+      <entry>
+       Potlaèí výstup HTTP hlavièek. Normálnì PHP tiskne HTTP hlavièky
+       pro volající program (typicky WWW server) k pøedání prohlí¾eèi.
+       Pøi pou¾ití pro aplikace spou¹tìné z pøíkazové øádky nemají hlavièky
+       smysl.
+      </entry>
+     </row>
+     <row>
+      <entry>-s</entry>
+      <entry>
+       Zobrazí barevnì vysvícený zdrojový soubor s daným názvem.
+       Je to toté¾, jako kdy¾ se zdroj vytiskne pomocí funkce
+       <function>highlight_file</function> v PHP skriptu.
+      </entry>
+     </row>
+     <row>
+      <entry>-f</entry>
+      <entry>
+       Parsuje daný soubor a hledá syntaktické a fatální chyby.
+       Tato volba implikuje -q. Pou¾ijte pro ladicí úèely
+       (debugging).       
+      </entry>
+     </row>
+     <row>
+      <entry>-v</entry>
+      <entry>
+       Zavoláním PHP s tímto pøepínaèem si mù¾ete vypsat èíslo verze,
+       napø. 4.0.6.        
+      </entry>
+     </row>
+     <row>
+      <entry>-C</entry>
+      <entry>
+       Za normálních okolností PHP mìní pracovní adresáø na ten, kde se
+       nachází spou¹tìný skript. To napøíklad umo¾òuje otvírat soubory
+       ve stejném adresáøi urèením pouhého názvu souboru (bez cesty).
+       Pokud byste toto chtìli potlaèit, pou¾ijte tuto volbu.       
+      </entry>
+     </row>
+     <row>
+      <entry>-c</entry>
+      <entry>
+       Pou¾itím tohoto argumentu mù¾ete specifikovat alternativní
+       umístìní souboru <filename>php.ini</filename>, tak¾e PHP bude
+       hledat konfiguraèní soubor zde namísto implicitního umístìní.       
+      </entry>
+     </row>
+     <row>
+      <entry>-d</entry>
+      <entry>
+       Touto volbou mù¾ete provést individuální nastavení        
+       <filename>php.ini</filename> bìhem provádìní skriptu.
+      </entry>
+     </row>
+     <row>
+      <entry>-l</entry>
+      <entry>
+       Otestuje daný soubor na syntaktické chyby. Tato volba implikuje
+       -q. Pou¾ijte ji pro úèely ladìní. Nebudou se hledat fatální chyby
+       (jako jsou nedefinované funkce). Pokud chcete hledat i fatální
+       chyby, pou¾ijte -f.       
+      </entry>
+     </row>
+     <row>
+      <entry>-m</entry>
+      <entry>
+       Pou¾itím této volby PHP vypí¹e zabudované (a naètené) PHP a Zend
+       moduly, èísla verzí PHP a Zend, a také krátkou informaci o
+       autorských právech k jádru Zend.       
+      </entry>
+     </row>
+     <row>
+      <entry>-i</entry>
+      <entry>
+       Tento pøepínaè zavolá funkci <function>phpinfo</function> a vypí¹e
+       její výsledek. Pokud PHP nepracuje správnì, je dobré spustit
+       <literal>php -i</literal> a podívat se, zda se nevypsala nìjaká
+       chybová hlá¹ení pøed nebo uvnitø informaèních tabulek.
+      </entry>
+     </row>
+     <row>
+      <entry>-h</entry>
+      <entry>
+       Touto volbou získáte informace o aktuálních volbách pøíkazové øádky
+       a jednoøádkové popisy o tom, co dìlají.       
+      </entry>
+     </row>
+    </tbody>
+   </tgroup>
+  </table>
+ </para>
+ <para>
+  Spustitelná verze PHP mù¾e být pou¾ita pro spou¹tìní skriptù absolutnì
+  nezávisle na webovském serveru. Pokud jste na unixovém systému, mù¾ete
+  do PHP skriptu pøidat speciální první øádek a udìlat z nìj spustitelný
+  program - systém bude vìdìt, jaký program by mìl skript zpracovávat.
+  Na Windows mù¾ete asociovat <literal>php.exe -q</literal> se souborovou
+  pøíponou <literal>.php</literal> (pro spou¹tìní dvojklikem), nebo mù¾ete
+  vytvoøit dávkový soubor pro spu¹tìní skriptu pøes PHP. První øádek skriptu
+  pro práci v Unixu nebude ve Windows vadit, tak¾e tímto zpùsobem mù¾ete
+  psát programy pro více platforem. Jednoduchý pøíklad psaní PHP programu
+  pro pøíkazovou øádku je uveden ní¾e.    
+ </para>
+ <example>
+  <title>Skript urèený ke spou¹tìní z pøíkazové øádky (script.php)</title>
+  <programlisting role="php">
+<![CDATA[
+#!/usr/bin/php -q
+<?php
+
+if ($argc != 2 || in_array($argv[1], array('--help', '-help', '-h', '-?'))) {
+?>
+
+This is a command line PHP script with one option.
+
+  Usage:
+  <?php echo $argv[0]; ?> <option>
+
+  <option> can be some word you would like
+  to print out. With the --help, -help, -h,
+  or -? options, you can get this help.
+
+<?php
+} else {
+    echo $argv[1];
+}
+?>
+]]>
+  </programlisting>
+ </example>
+ <para>
+  Ve vý¹e uvedeném skriptu jsme pou¾ili speciální první øádek k indikaci,
+  ¾e by tento soubor mìl být spou¹tìn pomocí PHP a nemìl by vypisovat
+  HTTP hlavièky. Jsou zde dvì promìnné, které mù¾ete pou¾ít pøi psaní
+  aplikací pro PHP spou¹tìných z pøíkazové øádky:
+  <varname>$argc</varname> a
+  <varname>$argv</varname>. První z nich je poèet argumentù + 1 (název
+  bì¾ícího skriptu). Druhá je pole obsahující argumenty, poèínaje názvem
+  skriptu jako èíslo 0 (<varname>$argv[0]</varname>).
+ </para>
+ <para>
+  V ukázkovém programu se testuje, zda je argumentù více èi ménì ne¾ jeden.
+  Pokud by argument byl <literal>--help</literal>,
+  <literal>-help</literal>, <literal>-h</literal> nebo <literal>-?</literal>,
+  vytiskne se nápovìda k programu vèetnì skuteèného názvu skriptu.
+  Pokud by byly pøidány nìjaké dal¹í argumenty, vytisknou se na výstup.  
+ </para>
+ <para>
+  Pokud byste chtìli spou¹tìt uvedený skript pod Unixem, musíte ho udìlat
+  spustitelným (nastavit práva pro spou¹tìní), a pak jednodu¹e napsat
+  <literal>script.php vypis_tohle</literal> nebo
+  <literal>script.php -h</literal>. Na Windows musíte pro tento úkol vytvoøit
+  dávkový soubor:  
+ </para>
+ <example>
+  <title>Dávkový soubor pro spou¹tìní PHP skriptu z pøíkazové øádky (script.bat)</title>
+  <programlisting role="winbat">
+@c:\php\php.exe -q script.php %1 %2 %3 %4
+  </programlisting>
+ </example>
+ <para>
+  Za pøedpokladu, ¾e jste vý¹e uvedený program nazvali
+  <filename>script.php</filename> a soubor
+  <filename>php.exe</filename> máte ulo¾ený jako
+  <filename>c:\php\php.exe</filename>, mù¾ete tento dávkový soubor spou¹tìt
+  takto:  
+  <literal>script.bat echothis</literal> nebo
+  <literal>script.bat -h</literal>.
+ </para>
+ <para>
+  Viz také dokumentaci roz¹íøení <link linkend="ref.readline">Readline</link>,
+  kde najdete více funkcí pro pou¾ití k aplikacím PHP spou¹tìných z
+  pøíkazové øádky.  
+ </para>
+</chapter>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->