cvs: phpdoc-ru /chapters intro.xml
| From: | Ivan Kovalenko | Date: | Thu, 05 Sep 2002 17:28:03 +0000 |
| Subject: | cvs: phpdoc-ru /chapters intro.xml | ||
| Groups: | php.doc.ru | ||
| Request: | Send a blank email to doc-ru+get-38@lists.php.net to get a copy of this message | ||
tronic Thu Sep 5 13:28:03 2002 EDT
Added files:
/phpdoc-ru/chapters intro.xml
Log:
Translation done.
Index: phpdoc-ru/chapters/intro.xml +++ phpdoc-ru/chapters/intro.xml <?xml version="1.0" encoding="windows-1251"?> <!-- EN-Revision: 1.34 Maintainer: tronic Status: ready --> <!-- $Revision: 1.1 $ --> <chapter id="introduction"> <title>Ââåäåíèå</title> <sect1 id="intro-whatis"> <title>×òî òàêîå PHP?</title> <para> <acronym>PHP</acronym> (ðåêóðñèâíûé àêðîíèì ñëîâîñî÷åòàíèÿ "PHP: Hypertext Preprocessor") - ýòî øèðîêî èñïîëüçóåìûé ÿçûê ïðîãðàììèðîâàíèÿ îáùåãî íàçíà÷åíèÿ ñ îòêðûòûì èñõîäíûì êîäîì. PHP ñêîíñòðóèðîâàí ñïåöèàëüíî äëÿ âåäåíèÿ Web-ðàçðàáîòîê è ìîæåò âíåäðÿòüñÿ â HTML-êîä. </para> <para> Ïðîñòîé îòâåò, íî ÷òî îí ìîæåò îçíà÷àòü? Âîò ïðèìåð: </para> <para> <example> <title>Ïðèìåð ïðîãðàììèðîâàíèÿ íà PHP</title> <programlisting role="php"> <![CDATA[ <html> <head> <title>Ïðèìåð</title> </head> <body> <?php echo "Ïðèâåò, ÿ - ñêðèïò PHP!"; ?> </body> </html> ]]> </programlisting> </example> </para> <para> Îáðàòèòå âíèìàíèå íà îòëè÷èå ýòîãî ñêðèïòà îò ñêðèïòîâ, íàïèñàííûõ íà äðóãèõ ÿçûêàõ, íàïðèìåð, íà Perl èëè C - âìåñòî òîãî, ÷òîáû ñîçäàâàòü ïðîãðàììó, êîòîðàÿ çàíèìàåòñÿ ôîðìèðîâàíèåì HTML-êîäà è ñîäåðæèò áåñ÷èñëåííîå ìíîæåñòâî ïðåäíàçíà÷åííûõ äëÿ ýòîãî êîìàíä, âû ñîçäàåòå HTML-êîä ñ íåñêîëüêèìè âíåäðåííûìè êîìàíäàìè PHP (â ïðèâåäåííîì ñëó÷àå, ïðåäíàçíà÷åííûìè äëÿ âûâîäà òåêñòà). Êîä PHP îòäåëÿåòñÿ ñïåöèàëüíûìè <link linkend="language.basic-syntax.phpmode">íà÷àëüíûì è êîíå÷íûì òåãàìè</link>, êîòîðûå ïîçâîëÿþò ïðîöåññîðó PHP îïðåäåëÿòü íà÷àëî è êîíåö ó÷àñòêà HTML-êîäà, ñîäåðæàùåãî PHP-ñêðèïò. </para> <para> Çíà÷èòåëüíûì îòëè÷èåì PHP îò êàêîãî-ëèáî êîäà, âûïîëíÿþùåãîñÿ íà ñòîðîíå êëèåíòà, íàïðèìåð, JavaScript, ÿâëÿåòñÿ òî, ÷òî PHP-ñêðèïòû âûïîëíÿþòñÿ íà ñåðâåðå. Åñëè áû ó âàñ íà ñåðâåðå áûë ðàçìåùåí ñêðèïò, ïîäîáíûé âûøåïðèâåäåííîìó, êëèåíò ïîëó÷èë áû òîëüêî ðåçóëüòàò âûïîëíåíèÿ ñêðèïòà, ïðè÷åì îí íå ñìîã áû âûÿñíèòü, êàêîé èìåííî êîä âûïîëíÿåòñÿ. Âû äàæå ìîæåòå ñêîíôèãóðèðîâàòü ñâîé ñåðâåð òàêèì îáðàçîì, ÷òîáû HTML-ôàéëû îáðàáàòûâàëèñü ïðîöåññîðîì PHP, òàê ÷òî êëèåíòû äàæå íå ñìîãóò óçíàòü, ïîëó÷àþò ëè îíè îáû÷íûé HTML-ôàéë èëè ðåçóëüòàò âûïîëíåíèÿ ñêðèïòà. </para> <para> PHP êðàéíå ïðîñò äëÿ îñâîåíèÿ, íî âìåñòå ñ òåì ñïîñîáåí óäîâëåòâîðèòü çàïðîñû ïðîôåññèîíàëüíûõ ïðîãðàììèñòîâ. Ïîñëå òîãî, êàê âû âïåðâûå óñëûøàëè î PHP, è îòêðûëè ýòî ðóêîâîäñòâî, â òå÷åíèå íåñêîëüêèõ ÷àñîâ âû óæå ñìîæåòå ñîçäàâàòü ïðîñòûå PHP-ñêðèïòû. </para> <para> Õîòÿ PHP, ãëàâíûì îáðàçîì, ïðåäíàçíà÷åí äëÿ ðàáîòû â ñðåäå web-ñåðâåðîâ, îáëàñòü åãî ïðèìåíåíèÿ íå îãðàíè÷èâàåòñÿ òîëüêî ýòèì. ×èòàéòå äàëüøå è íå ïðîïóñòèòå ãëàâó <link linkend="intro-whatcando">Âîçìîæíîñòè PHP</link>. </para> </sect1> <sect1 id="intro-whatcando"> <title>Âîçìîæíîñòè PHP</title> <para> PHP ìîæåò âñå. Ãëàâíûì îáðàçîì, îáëàñòü ïðèìåíåíèÿ PHP ñôîêóñèðîâàíà íà íàïèñàíèå ñêðèïòîâ, ðàáîòàþùèõ íà ñòîðîíå ñåðâåðà; òàêèì îáðàçîì, PHP ñïîñîáåí âûïîëíÿòü âñ¸ òî, ÷òî âûïîëíÿåò ëþáàÿ äðóãàÿ ïðîãðàììà CGI, íàïðèìåð, îáðàáàòûâàòü äàííûõ ôîðì, ãåíåðèðîâàòü äèíàìè÷åñêèå ñòðàíèöû èëè îòñûëàòü è ïðèíèìàòü cookies. Íî PHP ñïîñîáåí âûïîëíÿòü è ìíîæåñòâî äðóãèõ çàäà÷. </para> <para> Ñóùåñòâóþò òðè îñíîâíûõ îáëàñòè, ãäå èñïîëüçóåòñÿ PHP. <itemizedlist> <listitem> <simpara> Ñîçäàíèå ñêðèïòîâ äëÿ âûïîëíåíèÿ íà ñòîðîíå ñåðâåðà. PHP íàèáîëåå øèðîêî èñïîëüçóåòñÿ èìåííî òàêèì îáðàçîì. Âñå, ÷òî âàì ïîíàäîáèòñÿ, ýòî ïàðñåð PHP (â âèäå ïðîãðàììû CGI èëè ñåðâåðíîãî ìîäóëÿ), âåáñåðâåð è áðîóçåð. ×òîáû âû ìîãëè ïðîñìàòðèâàòü ðåçóëüòàòû âûïîëíåíèÿ PHP-ñêðèïòîâ â áðîóçåðå, âàì íóæåí ðàáîòàþùèé âåáñåðâåð è óñòàíîâëåííûé PHP. Çà áîëåå ïîäðîáíûìè ñâåäåíèÿìè îáðàòèòåñü ê ãëàâå <link linkend="installation">Ñîâåòû ïî óñòàíîâêå</link>. </simpara> </listitem> <listitem> <simpara> Ñîçäàíèå ñêðèïòîâ äëÿ âûïîëíåíèÿ â êîìàíäíîé ñòðîêå. Âû ìîæåòå ñîçäàòü PHP-ñêðèïò, ñïîñîáíûé çàïóñêàòüñÿ âíå çàâèñèìîñòè îò âåáñåðâåðà è áðîóçåðà. Âñå, ÷òî âàì ïîòðåáóåòñÿ - ïàðñåð PHP. Òàêîé ñïîñîá èñïîëüçîâàíèÿ PHP èäåàëüíî ïîäõîäèò äëÿ ñêðèïòîâ, êîòîðûå äîëæíû âûïîëíÿòüñÿ ðåãóëÿðíî, íàïðèìåð, ñ ïîìîùüþ cron (íà ïëàòôîðìàõ *nix èëè Linux) èëè ñ ïîìîùüþ ïëàíèðîâùèêà çàäà÷ (Task Scheduler) íà ïëàòôîðìàõ Windows. Ýòè ñêðèïòû òàêæå ìîãóò áûòü èñïîëüçîâàíû â çàäà÷àõ ïðîñòîé îáðàáîòêè òåêñòîâ. Çà äîïîëíèòåëüíîé èíôîðìàöèåé îáðàùàéòåñü ê ãëàâå <link linkend="features.commandline">Èñïîëüçîâàíèå PHP â ñðåäå êîìàíäíîé ñòðîêè</link>. </simpara> </listitem> <listitem> <simpara> Ñîçäàíèå ïðèëîæåíèé GUI, âûïîëíÿþùèõñÿ íà ñòîðîíå êëèåíòà. Âîçìîæíî, PHP ÿâëÿåòñÿ íå ñàìûì ëó÷øèì ÿçûêîì äëÿ ñîçäàíèÿ ïîäîáíûõ ïðèëîæåíèé, íî, åñëè âû î÷åíü õîðîøî çíàåòå PHP è õîòåëè áû èñïîëüçîâàòü íåêîòîðûå åãî âîçìîæíîñòè â ñâîèõ êëèåíò-ïðèëîæåíèÿõ, âû ìîæåòå èñïîëüçîâàòü PHP-GTK äëÿ ñîçäàíèÿ òàêèõ ïðèëîæåíèé. Ïîäîáíûì îáðàçîì âû ìîæåòå ñîçäàâàòü è êðîññ-ïëàòôîðìåííûå ïðèëîæåíèÿ. PHP-GTK ÿâëÿåòñÿ ðàñøèðåíèåì PHP è íå ïîñòàâëÿåòñÿ âìåñòå ñ äèñòðèáóòèâîì PHP. Åñëè âû çàèíòåðåñîâàíû, ïîñåòèòå <ulink url="&url.php.gtk;">ñàéò PHP-GTK</ulink>. </simpara> </listitem> </itemizedlist> </para> <para> PHP äîñòóïåí äëÿ áîëüøèíñòâà îïåðàöèîííûõ ñèñòåì, âêëþ÷àÿ Linux, ìíîãèå ìîäèôèêàöèè Unix (òàêèå, êàê HP-UX, Solaris è OpenBSD), Microsoft Windows, Mac OS X, RISC OS, è ìíîãèõ äðóãèõ. (Ñîâåðøåííî òî÷íî, ÷òî ñóùåñòâóåò âåðñèÿ PHP äëÿ OS/2. Íåèçâåñòíî, ïðàâäà, íàñêîëüêî ñîîòâåòñòâóþùàÿ íûíåøíèì ðåàëèÿì - Ïðèì.ïåðåâ.) Òàêæå â PHP âêëþ÷åíà ïîääåðæêà áîëüøèíñòâà ñîâðåìåííûõ âåáñåðâåðîâ, òàêèõ, êàê Apache, Microsoft Internet Information Server, Personal Web Server, ñåðâåðîâ Netscape è iPlanet, ñåðâåðà Oreilly Website Pro, Caudium, Xitami, OmniHTTPd è ìíîãèõ äðóãèõ. Äëÿ áîëüøèíñòâà ñåðâåðîâ PHP ïîñòàâëÿåòñÿ â êà÷åñòâå ìîäóëÿ, äëÿ äðóãèõ, ïîääåðæèâàþùèõ ñòàíäàðò CGI, PHP ìîæåò ôóíêöèîíèðîâàòü â êà÷åñòâå ïðîöåññîðà CGI. </para> <para> Òàêèì îáðàçîì, âûáèðàÿ PHP, âû ïîëó÷àåòå ñâîáîäó âûáîðà îïåðàöèîííîé ñèñòåìû è âåáñåðâåðà. Êðîìå òîãî, ó âàñ ïîÿâëÿåòñÿ âûáîð ìåæäó èñïîëüçîâàíèåì ïðîöåäóðíîãî èëè îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ èëè æå èõ ñî÷åòàíèÿ. Íåñìîòðÿ íà òî, ÷òî òåêóùàÿ âåðñèÿ PHP ïîääåðæèâàåò íå âñå îñîáåííîñòè ÎÎÏ, ìíîãèå áèáëèîòåêè êîäà è áîëüøèå ïðèëîæåíèÿ (âêëþ÷àÿ áèáëèîòåêó PEAR) íàïèñàíû òîëüêî ñ èñïîëüçîâàíèåì ÎÎÏ. </para> <para> PHP ñïîñîáåí íå òîëüêî âûäàâàòü HTML. Âîçìîæíîñòè PHP âêëþ÷àþò ôîðìèðîâàíèå èçîáðàæåíèé, ôàéëîâ PDF è äàæå ðîëèêîâ Flash (ñ èñïîëüçîâàíèåì libswf è Ming), ñîçäàâàåìûõ "íà ëåòó". PHP òàêæå ñïîñîáåí âûäàâàòü ëþáûå òåêñòîâûå äàííûå, òàêèå, êàê XHTML è äðóãèå XML-ôàéëû. PHP ñïîñîáåí îñóùåñòâëÿòü àâòîìàòè÷åñêóþ ãåíåðàöèþ òàêèõ ôàéëîâ è ñîõðàíÿòü èõ â ôàéëîâîé ñèñòåìå âàøåãî ñåðâåðà âìåñòî òîãî, ÷òîáû îòäàâàòü êëèåíòó, îðãàíèçóÿ, òàêèì îáðàçîì, êåø äèíàìè÷åñêîãî ñîäåðæàíèÿ, ðàñïîëîæåííûé íà ñòîðîíå ñåðâåðà. </para> <para> Îäíèì èç çíà÷èòåëüíûõ ïðåèìóùåñòâ PHP ÿâëÿåòñÿ ïîääåðæêà øèðîêîãî êðóãà áàç äàííûõ. Ñîçäàíèå ñêðèïòà, èñïîëüçóþùåãî áàçû äàííûõ, - íåâåðîÿòíî ïðîñòî.  íàñòîÿùåå âðåìÿ PHP ïîääåðæèâàåò ñëåäóþùèå áàçû äàííûõ: <blockquote> <simplelist columns="3"> <member>Adabas D</member> <member>dBase</member> <member>Empress</member> <member>FilePro (òîëüêî ÷òåíèå)</member> <member>Hyperwave</member> <member>IBM DB2</member> <member>Informix</member> <member>Ingres</member> <member>InterBase</member> <member>FrontBase</member> <member>mSQL</member> <member>Direct MS-SQL</member> <member>MySQL</member> <member>ODBC</member> <member>Oracle (OCI7 è OCI8)</member> <member>Ovrimos</member> <member>PostgreSQL</member> <member>Solid</member> <member>Sybase</member> <member>Velocis</member> <member>Unix dbm</member> </simplelist> </blockquote> Òàêæå â PHP âêëþ÷åíà ïîääåðæêà DBX äëÿ ðàáîòû íà àáñòðàêòíîì óðîâíå, òàê ÷òî âû ìîæåòå ðàáîòàòü ñ ëþáîé áàçîé äàííûõ, èñïîëüçóþùèõ DBX. Êðîìå òîãî, PHP ïîääåðæèâàåò ODBC (Open Database Connection standard), òàêèì îáðàçîì, âû ìîæåòå ðàáîòàòü ñ ëþáîé áàçîé äàííûõ, ïîääåðæèâàþùåé ýòîò âñåìèðíî ïðèçíàííûé ñòàíäàðò. </para> <para> PHP òàêæå ïîääåðæèâàåò "îáùåíèå" ñ äðóãèìè ñåðâèñàìè ñ èñïîëüçîâàíèåì òàêèõ ïðîòîêîëîâ, êàê LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (íà ïëàòôîðìàõ Windows) è ìíîãèõ äðóãèõ. Êðîìå òîãî, âû ïîëó÷àåòå âîçìîæíîñòü ðàáîòàòü ñ ñåòåâûìè ñîêåòàìè "íàïðÿìóþ". PHP ïîääåðæèâàåò ñòàíäàðò îáìåíà ñëîæíûìè ñòðóêòóðàìè äàííûõ WDDX. Îáðàùàÿ âíèìàíèå íà âçàèìîäåéñòâèå ìåæäó ðàçëè÷íûìè ÿçûêàìè, ñëåäóåò óïîìÿíóòü î ïîääåðæêå îáúåêòîâ Java è âîçìîæíîñòè èõ èñïîëüçîâàíèÿ â êà÷åñòâå îáúåêòîâ PHP. Äëÿ äîñòóïà ê óäàëåííûì îáúåêòàì âû ìîæåòå èñïîëüçîâàòü ðàñøèðåíèå CORBA. </para> <para> PHP âêëþ÷àåò ñðåäñòâà îáðàáîòêè òåêñòîâîé èíôîðìàöèè, íà÷èíàÿ ñ ðåãóëÿðíûõ âûðàæåíèé Perl èëè POSIX Extended è çàêàí÷èâàÿ ïàðñåðîì äîêóìåíòîâ XML. Äëÿ ïàðñèíãà XML èñïîëüçóþòñÿ ñòàíäàðòû SAX è DOM. Äëÿ ïðåîáðàçîâàíèÿ äîêóìåíòîâ XML âû ìîæåòå èñïîëüçîâàòü ðàñøèðåíèå XSLT. </para> <para> Èñïîëüçóÿ PHP â îáëàñòè ýëåêòðîííîé êîììåðöèè, âû îáðàòèòå âíèìàíèå íà ôóíêöèè îñóùåñòâëåíèÿ ïëàòåæåé Cybercash, CyberMUT, VeriSign Payflow Pro è CCVS. </para> <para> Ïîñëåäíèì ïî ïîðÿäêó, íî íå ïî çíà÷åíèþ, ÿâëÿåòñÿ ïîääåðæêà ìíîãèõ äðóãèõ ðàñøèðåíèé, òàêèõ, êàê ôóíêöèè ïîèñêîâîé ìàøèíû mnoGoSearch, ôóíêöèè IRC Gateway, ôóíêöèè äëÿ ðàáîòû ñî ñæàòûìè ôàéëàìè (gzip, bz2), ôóíêöèè êàëåíäàðíûõ âû÷èñëåíèé, ôóíêöèè ïåðåâîäà... </para> <para> Êàê âû âèäèòå, ýòîé ñòðàíèöû íå õâàòèò äëÿ òîãî, ÷òîáû ïåðå÷èñëèòü âñå, ÷òî ìîæåò ïðåäëîæèòü âàì PHP. ×èòàéòå ñëåäóþùóþ ãëàâó, <link linkend="installation">Óñòàíîâêà PHP</link> è îáðàòèòåñü ê ãëàâå <link linkend="funcref">Ñïðàâî÷íèê ïî ôóíêöèÿì</link> çà áîëåå ïîäðîáíûìè ñâåäåíèÿìè î ïåðå÷èñëåííûõ âûøå ðàñøèðåíèÿõ. </para> </sect1> </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: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->
Index: phpdoc-ru/chapters/intro.xml +++ phpdoc-ru/chapters/intro.xml <?xml version="1.0" encoding="windows-1251"?> <!-- EN-Revision: 1.34 Maintainer: tronic Status: ready --> <!-- $Revision: 1.1 $ --> <chapter id="introduction"> <title>Ââåäåíèå</title> <sect1 id="intro-whatis"> <title>×òî òàêîå PHP?</title> <para> <acronym>PHP</acronym> (ðåêóðñèâíûé àêðîíèì ñëîâîñî÷åòàíèÿ "PHP: Hypertext Preprocessor") - ýòî øèðîêî èñïîëüçóåìûé ÿçûê ïðîãðàììèðîâàíèÿ îáùåãî íàçíà÷åíèÿ ñ îòêðûòûì èñõîäíûì êîäîì. PHP ñêîíñòðóèðîâàí ñïåöèàëüíî äëÿ âåäåíèÿ Web-ðàçðàáîòîê è ìîæåò âíåäðÿòüñÿ â HTML-êîä. </para> <para> Ïðîñòîé îòâåò, íî ÷òî îí ìîæåò îçíà÷àòü? Âîò ïðèìåð: </para> <para> <example> <title>Ïðèìåð ïðîãðàììèðîâàíèÿ íà PHP</title> <programlisting role="php"> <![CDATA[ <html> <head> <title>Ïðèìåð</title> </head> <body> <?php echo "Ïðèâåò, ÿ - ñêðèïò PHP!"; ?> </body> </html> ]]> </programlisting> </example> </para> <para> Îáðàòèòå âíèìàíèå íà îòëè÷èå ýòîãî ñêðèïòà îò ñêðèïòîâ, íàïèñàííûõ íà äðóãèõ ÿçûêàõ, íàïðèìåð, íà Perl èëè C - âìåñòî òîãî, ÷òîáû ñîçäàâàòü ïðîãðàììó, êîòîðàÿ çàíèìàåòñÿ ôîðìèðîâàíèåì HTML-êîäà è ñîäåðæèò áåñ÷èñëåííîå ìíîæåñòâî ïðåäíàçíà÷åííûõ äëÿ ýòîãî êîìàíä, âû ñîçäàåòå HTML-êîä ñ íåñêîëüêèìè âíåäðåííûìè êîìàíäàìè PHP (â ïðèâåäåííîì ñëó÷àå, ïðåäíàçíà÷åííûìè äëÿ âûâîäà òåêñòà). Êîä PHP îòäåëÿåòñÿ ñïåöèàëüíûìè <link linkend="language.basic-syntax.phpmode">íà÷àëüíûì è êîíå÷íûì òåãàìè</link>, êîòîðûå ïîçâîëÿþò ïðîöåññîðó PHP îïðåäåëÿòü íà÷àëî è êîíåö ó÷àñòêà HTML-êîäà, ñîäåðæàùåãî PHP-ñêðèïò. </para> <para> Çíà÷èòåëüíûì îòëè÷èåì PHP îò êàêîãî-ëèáî êîäà, âûïîëíÿþùåãîñÿ íà ñòîðîíå êëèåíòà, íàïðèìåð, JavaScript, ÿâëÿåòñÿ òî, ÷òî PHP-ñêðèïòû âûïîëíÿþòñÿ íà ñåðâåðå. Åñëè áû ó âàñ íà ñåðâåðå áûë ðàçìåùåí ñêðèïò, ïîäîáíûé âûøåïðèâåäåííîìó, êëèåíò ïîëó÷èë áû òîëüêî ðåçóëüòàò âûïîëíåíèÿ ñêðèïòà, ïðè÷åì îí íå ñìîã áû âûÿñíèòü, êàêîé èìåííî êîä âûïîëíÿåòñÿ. Âû äàæå ìîæåòå ñêîíôèãóðèðîâàòü ñâîé ñåðâåð òàêèì îáðàçîì, ÷òîáû HTML-ôàéëû îáðàáàòûâàëèñü ïðîöåññîðîì PHP, òàê ÷òî êëèåíòû äàæå íå ñìîãóò óçíàòü, ïîëó÷àþò ëè îíè îáû÷íûé HTML-ôàéë èëè ðåçóëüòàò âûïîëíåíèÿ ñêðèïòà. </para> <para> PHP êðàéíå ïðîñò äëÿ îñâîåíèÿ, íî âìåñòå ñ òåì ñïîñîáåí óäîâëåòâîðèòü çàïðîñû ïðîôåññèîíàëüíûõ ïðîãðàììèñòîâ. Ïîñëå òîãî, êàê âû âïåðâûå óñëûøàëè î PHP, è îòêðûëè ýòî ðóêîâîäñòâî, â òå÷åíèå íåñêîëüêèõ ÷àñîâ âû óæå ñìîæåòå ñîçäàâàòü ïðîñòûå PHP-ñêðèïòû. </para> <para> Õîòÿ PHP, ãëàâíûì îáðàçîì, ïðåäíàçíà÷åí äëÿ ðàáîòû â ñðåäå web-ñåðâåðîâ, îáëàñòü åãî ïðèìåíåíèÿ íå îãðàíè÷èâàåòñÿ òîëüêî ýòèì. ×èòàéòå äàëüøå è íå ïðîïóñòèòå ãëàâó <link linkend="intro-whatcando">Âîçìîæíîñòè PHP</link>. </para> </sect1> <sect1 id="intro-whatcando"> <title>Âîçìîæíîñòè PHP</title> <para> PHP ìîæåò âñå. Ãëàâíûì îáðàçîì, îáëàñòü ïðèìåíåíèÿ PHP ñôîêóñèðîâàíà íà íàïèñàíèå ñêðèïòîâ, ðàáîòàþùèõ íà ñòîðîíå ñåðâåðà; òàêèì îáðàçîì, PHP ñïîñîáåí âûïîëíÿòü âñ¸ òî, ÷òî âûïîëíÿåò ëþáàÿ äðóãàÿ ïðîãðàììà CGI, íàïðèìåð, îáðàáàòûâàòü äàííûõ ôîðì, ãåíåðèðîâàòü äèíàìè÷åñêèå ñòðàíèöû èëè îòñûëàòü è ïðèíèìàòü cookies. Íî PHP ñïîñîáåí âûïîëíÿòü è ìíîæåñòâî äðóãèõ çàäà÷. </para> <para> Ñóùåñòâóþò òðè îñíîâíûõ îáëàñòè, ãäå èñïîëüçóåòñÿ PHP. <itemizedlist> <listitem> <simpara> Ñîçäàíèå ñêðèïòîâ äëÿ âûïîëíåíèÿ íà ñòîðîíå ñåðâåðà. PHP íàèáîëåå øèðîêî èñïîëüçóåòñÿ èìåííî òàêèì îáðàçîì. Âñå, ÷òî âàì ïîíàäîáèòñÿ, ýòî ïàðñåð PHP (â âèäå ïðîãðàììû CGI èëè ñåðâåðíîãî ìîäóëÿ), âåáñåðâåð è áðîóçåð. ×òîáû âû ìîãëè ïðîñìàòðèâàòü ðåçóëüòàòû âûïîëíåíèÿ PHP-ñêðèïòîâ â áðîóçåðå, âàì íóæåí ðàáîòàþùèé âåáñåðâåð è óñòàíîâëåííûé PHP. Çà áîëåå ïîäðîáíûìè ñâåäåíèÿìè îáðàòèòåñü ê ãëàâå <link linkend="installation">Ñîâåòû ïî óñòàíîâêå</link>. </simpara> </listitem> <listitem> <simpara> Ñîçäàíèå ñêðèïòîâ äëÿ âûïîëíåíèÿ â êîìàíäíîé ñòðîêå. Âû ìîæåòå ñîçäàòü PHP-ñêðèïò, ñïîñîáíûé çàïóñêàòüñÿ âíå çàâèñèìîñòè îò âåáñåðâåðà è áðîóçåðà. Âñå, ÷òî âàì ïîòðåáóåòñÿ - ïàðñåð PHP. Òàêîé ñïîñîá èñïîëüçîâàíèÿ PHP èäåàëüíî ïîäõîäèò äëÿ ñêðèïòîâ, êîòîðûå äîëæíû âûïîëíÿòüñÿ ðåãóëÿðíî, íàïðèìåð, ñ ïîìîùüþ cron (íà ïëàòôîðìàõ *nix èëè Linux) èëè ñ ïîìîùüþ ïëàíèðîâùèêà çàäà÷ (Task Scheduler) íà ïëàòôîðìàõ Windows. Ýòè ñêðèïòû òàêæå ìîãóò áûòü èñïîëüçîâàíû â çàäà÷àõ ïðîñòîé îáðàáîòêè òåêñòîâ. Çà äîïîëíèòåëüíîé èíôîðìàöèåé îáðàùàéòåñü ê ãëàâå <link linkend="features.commandline">Èñïîëüçîâàíèå PHP â ñðåäå êîìàíäíîé ñòðîêè</link>. </simpara> </listitem> <listitem> <simpara> Ñîçäàíèå ïðèëîæåíèé GUI, âûïîëíÿþùèõñÿ íà ñòîðîíå êëèåíòà. Âîçìîæíî, PHP ÿâëÿåòñÿ íå ñàìûì ëó÷øèì ÿçûêîì äëÿ ñîçäàíèÿ ïîäîáíûõ ïðèëîæåíèé, íî, åñëè âû î÷åíü õîðîøî çíàåòå PHP è õîòåëè áû èñïîëüçîâàòü íåêîòîðûå åãî âîçìîæíîñòè â ñâîèõ êëèåíò-ïðèëîæåíèÿõ, âû ìîæåòå èñïîëüçîâàòü PHP-GTK äëÿ ñîçäàíèÿ òàêèõ ïðèëîæåíèé. Ïîäîáíûì îáðàçîì âû ìîæåòå ñîçäàâàòü è êðîññ-ïëàòôîðìåííûå ïðèëîæåíèÿ. PHP-GTK ÿâëÿåòñÿ ðàñøèðåíèåì PHP è íå ïîñòàâëÿåòñÿ âìåñòå ñ äèñòðèáóòèâîì PHP. Åñëè âû çàèíòåðåñîâàíû, ïîñåòèòå <ulink url="&url.php.gtk;">ñàéò PHP-GTK</ulink>. </simpara> </listitem> </itemizedlist> </para> <para> PHP äîñòóïåí äëÿ áîëüøèíñòâà îïåðàöèîííûõ ñèñòåì, âêëþ÷àÿ Linux, ìíîãèå ìîäèôèêàöèè Unix (òàêèå, êàê HP-UX, Solaris è OpenBSD), Microsoft Windows, Mac OS X, RISC OS, è ìíîãèõ äðóãèõ. (Ñîâåðøåííî òî÷íî, ÷òî ñóùåñòâóåò âåðñèÿ PHP äëÿ OS/2. Íåèçâåñòíî, ïðàâäà, íàñêîëüêî ñîîòâåòñòâóþùàÿ íûíåøíèì ðåàëèÿì - Ïðèì.ïåðåâ.) Òàêæå â PHP âêëþ÷åíà ïîääåðæêà áîëüøèíñòâà ñîâðåìåííûõ âåáñåðâåðîâ, òàêèõ, êàê Apache, Microsoft Internet Information Server, Personal Web Server, ñåðâåðîâ Netscape è iPlanet, ñåðâåðà Oreilly Website Pro, Caudium, Xitami, OmniHTTPd è ìíîãèõ äðóãèõ. Äëÿ áîëüøèíñòâà ñåðâåðîâ PHP ïîñòàâëÿåòñÿ â êà÷åñòâå ìîäóëÿ, äëÿ äðóãèõ, ïîääåðæèâàþùèõ ñòàíäàðò CGI, PHP ìîæåò ôóíêöèîíèðîâàòü â êà÷åñòâå ïðîöåññîðà CGI. </para> <para> Òàêèì îáðàçîì, âûáèðàÿ PHP, âû ïîëó÷àåòå ñâîáîäó âûáîðà îïåðàöèîííîé ñèñòåìû è âåáñåðâåðà. Êðîìå òîãî, ó âàñ ïîÿâëÿåòñÿ âûáîð ìåæäó èñïîëüçîâàíèåì ïðîöåäóðíîãî èëè îáúåêòíî-îðèåíòèðîâàííîãî ïðîãðàììèðîâàíèÿ èëè æå èõ ñî÷åòàíèÿ. Íåñìîòðÿ íà òî, ÷òî òåêóùàÿ âåðñèÿ PHP ïîääåðæèâàåò íå âñå îñîáåííîñòè ÎÎÏ, ìíîãèå áèáëèîòåêè êîäà è áîëüøèå ïðèëîæåíèÿ (âêëþ÷àÿ áèáëèîòåêó PEAR) íàïèñàíû òîëüêî ñ èñïîëüçîâàíèåì ÎÎÏ. </para> <para> PHP ñïîñîáåí íå òîëüêî âûäàâàòü HTML. Âîçìîæíîñòè PHP âêëþ÷àþò ôîðìèðîâàíèå èçîáðàæåíèé, ôàéëîâ PDF è äàæå ðîëèêîâ Flash (ñ èñïîëüçîâàíèåì libswf è Ming), ñîçäàâàåìûõ "íà ëåòó". PHP òàêæå ñïîñîáåí âûäàâàòü ëþáûå òåêñòîâûå äàííûå, òàêèå, êàê XHTML è äðóãèå XML-ôàéëû. PHP ñïîñîáåí îñóùåñòâëÿòü àâòîìàòè÷åñêóþ ãåíåðàöèþ òàêèõ ôàéëîâ è ñîõðàíÿòü èõ â ôàéëîâîé ñèñòåìå âàøåãî ñåðâåðà âìåñòî òîãî, ÷òîáû îòäàâàòü êëèåíòó, îðãàíèçóÿ, òàêèì îáðàçîì, êåø äèíàìè÷åñêîãî ñîäåðæàíèÿ, ðàñïîëîæåííûé íà ñòîðîíå ñåðâåðà. </para> <para> Îäíèì èç çíà÷èòåëüíûõ ïðåèìóùåñòâ PHP ÿâëÿåòñÿ ïîääåðæêà øèðîêîãî êðóãà áàç äàííûõ. Ñîçäàíèå ñêðèïòà, èñïîëüçóþùåãî áàçû äàííûõ, - íåâåðîÿòíî ïðîñòî.  íàñòîÿùåå âðåìÿ PHP ïîääåðæèâàåò ñëåäóþùèå áàçû äàííûõ: <blockquote> <simplelist columns="3"> <member>Adabas D</member> <member>dBase</member> <member>Empress</member> <member>FilePro (òîëüêî ÷òåíèå)</member> <member>Hyperwave</member> <member>IBM DB2</member> <member>Informix</member> <member>Ingres</member> <member>InterBase</member> <member>FrontBase</member> <member>mSQL</member> <member>Direct MS-SQL</member> <member>MySQL</member> <member>ODBC</member> <member>Oracle (OCI7 è OCI8)</member> <member>Ovrimos</member> <member>PostgreSQL</member> <member>Solid</member> <member>Sybase</member> <member>Velocis</member> <member>Unix dbm</member> </simplelist> </blockquote> Òàêæå â PHP âêëþ÷åíà ïîääåðæêà DBX äëÿ ðàáîòû íà àáñòðàêòíîì óðîâíå, òàê ÷òî âû ìîæåòå ðàáîòàòü ñ ëþáîé áàçîé äàííûõ, èñïîëüçóþùèõ DBX. Êðîìå òîãî, PHP ïîääåðæèâàåò ODBC (Open Database Connection standard), òàêèì îáðàçîì, âû ìîæåòå ðàáîòàòü ñ ëþáîé áàçîé äàííûõ, ïîääåðæèâàþùåé ýòîò âñåìèðíî ïðèçíàííûé ñòàíäàðò. </para> <para> PHP òàêæå ïîääåðæèâàåò "îáùåíèå" ñ äðóãèìè ñåðâèñàìè ñ èñïîëüçîâàíèåì òàêèõ ïðîòîêîëîâ, êàê LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (íà ïëàòôîðìàõ Windows) è ìíîãèõ äðóãèõ. Êðîìå òîãî, âû ïîëó÷àåòå âîçìîæíîñòü ðàáîòàòü ñ ñåòåâûìè ñîêåòàìè "íàïðÿìóþ". PHP ïîääåðæèâàåò ñòàíäàðò îáìåíà ñëîæíûìè ñòðóêòóðàìè äàííûõ WDDX. Îáðàùàÿ âíèìàíèå íà âçàèìîäåéñòâèå ìåæäó ðàçëè÷íûìè ÿçûêàìè, ñëåäóåò óïîìÿíóòü î ïîääåðæêå îáúåêòîâ Java è âîçìîæíîñòè èõ èñïîëüçîâàíèÿ â êà÷åñòâå îáúåêòîâ PHP. Äëÿ äîñòóïà ê óäàëåííûì îáúåêòàì âû ìîæåòå èñïîëüçîâàòü ðàñøèðåíèå CORBA. </para> <para> PHP âêëþ÷àåò ñðåäñòâà îáðàáîòêè òåêñòîâîé èíôîðìàöèè, íà÷èíàÿ ñ ðåãóëÿðíûõ âûðàæåíèé Perl èëè POSIX Extended è çàêàí÷èâàÿ ïàðñåðîì äîêóìåíòîâ XML. Äëÿ ïàðñèíãà XML èñïîëüçóþòñÿ ñòàíäàðòû SAX è DOM. Äëÿ ïðåîáðàçîâàíèÿ äîêóìåíòîâ XML âû ìîæåòå èñïîëüçîâàòü ðàñøèðåíèå XSLT. </para> <para> Èñïîëüçóÿ PHP â îáëàñòè ýëåêòðîííîé êîììåðöèè, âû îáðàòèòå âíèìàíèå íà ôóíêöèè îñóùåñòâëåíèÿ ïëàòåæåé Cybercash, CyberMUT, VeriSign Payflow Pro è CCVS. </para> <para> Ïîñëåäíèì ïî ïîðÿäêó, íî íå ïî çíà÷åíèþ, ÿâëÿåòñÿ ïîääåðæêà ìíîãèõ äðóãèõ ðàñøèðåíèé, òàêèõ, êàê ôóíêöèè ïîèñêîâîé ìàøèíû mnoGoSearch, ôóíêöèè IRC Gateway, ôóíêöèè äëÿ ðàáîòû ñî ñæàòûìè ôàéëàìè (gzip, bz2), ôóíêöèè êàëåíäàðíûõ âû÷èñëåíèé, ôóíêöèè ïåðåâîäà... </para> <para> Êàê âû âèäèòå, ýòîé ñòðàíèöû íå õâàòèò äëÿ òîãî, ÷òîáû ïåðå÷èñëèòü âñå, ÷òî ìîæåò ïðåäëîæèòü âàì PHP. ×èòàéòå ñëåäóþùóþ ãëàâó, <link linkend="installation">Óñòàíîâêà PHP</link> è îáðàòèòåñü ê ãëàâå <link linkend="funcref">Ñïðàâî÷íèê ïî ôóíêöèÿì</link> çà áîëåå ïîäðîáíûìè ñâåäåíèÿìè î ïåðå÷èñëåííûõ âûøå ðàñøèðåíèÿõ. </para> </sect1> </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: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->