Utilizarea PHP din linia de comandă

Începând cu versiunea 4.3, PHP susține un nou tip SAPI (Server Application Programming Interface) numit CLI. ceea ce înseamnă interfață linie de comandă. După cum sugerează și numele, obiectul principal al acestei aplicații de dezvoltare este SAPI coajă de tip / shell (sau desktop) cu PHP. Există o diferență foarte mică de la alte CLI SAPI SAPI. care vor fi discutate în continuare în acest capitol.

CLI SAPI a fost lansat pentru prima data cu PHP 4.2.0. dar apoi a fost un experiment, și a fost necesar să-l includă în mod explicit --enable-cli atunci când rulează comanda ./configure. Începând cu PHP 4.3.0. CLI SAPI nu mai este experimental și întotdeauna construit și instalat ca un php fișier executabil binar (numit php.exe în Windows).

Diferențe semnificative din alte CLI SAPI SAPI.

Spre deosebire de SAPI CGI. nici un capac / antetele nu sunt scrise la ieșire.

Deși SAPI CGI are o modalitate de a suprima HTTP-capace, comutator echivalent pentru a le permite în CLI SAPI nr.

Există anumite directive php.ini. sunt redefinite în CLI SAPI. pentru că ei nu fac sens în mediul mediului coajă:

Tabelul 24-1. -direktiv php.ini Supracomanda

CLI SAPI- implicit

Este destul de dificil de citit în coajă de un mesaj de eroare, umplut cu toate cele lipsite de sens Codul HTML Tag, astfel încât valoarea implicită a acestei directive FALSE.

De preferință, orice ieșire de la imprimare (). echo (), iar compania imediat în scris la ieșire, și nu este trimis nici un tampon. Puteți utiliza în continuare tampon de ieșire. dacă doriți să lucrați cu ieșirea standard.

Datorită infinit mari oportunități de utilizare a PHP în medii medii shell, timpul maxim de executare nu este limitat. Întrucât cererile scrise pentru web, sunt efectuate într-o fracțiune de secundă, aplicarea coajă încerca să ia performanța maximă pentru timpul acordat.

Global variabile PHP $ argc (număr de argumente transmise la cerere) și $ argv (matrice argumente reale) sunt întotdeauna înregistrate și sunt umplute cu valorile corespunzătoare atunci când se utilizează CLI SAPI.

Notă: Aceste directive nu pot fi inițializat cu o valoare diferită de php.ini fișier de configurare sau fișier special (dacă este specificat). Este o anumită limitare, deoarece aceste valori implicite sunt aplicate după toate fișierele de configurare parsare. Cu toate acestea, valoarea lor poate fi modificată în timpul rulării (care nu are nici un sens pentru toate celelalte directive, de exemplu, register_argc_argv).

Este mai ușor să lucreze în mediul shell atunci când următoarele constante sunt definite:

Tabelul 24-2. Constantele CLI-specifice

Încarcă Zend-extensie. Dacă numai numele fișierului, PHP încearcă să se încarce această extensie de la calea implicită de curent la biblioteca de pe sistemul dumneavoastră (de obicei specificat ca /etc/ld.so.conf în Linux-sisteme). Se transferă nume de fișier cu o cale absolută nu va folosi calea de căutare sistem pentru biblioteci. Un nume de fișier în raport cu un director de informații va spune PHP - pentru a încerca să încarce extensia în raport cu directorul curent.

Această opțiune oferă o modalitate convenabilă de a efectua verificarea sintaxa de cod PHP. În caz de succes - text Nu există erori de sintaxă detectate în Este scris la ieșirea standard și rentabilitatea codul shell este 0. Dacă nereușite - erori de analiză de text împreună cu mesajul de eroare parser intern este scris la ieșirea standard și retur-cod shell este de 255.

Această opțiune nu va găsi erori fatale (cum ar fi anumite funcții nu). Utilizați -f. dacă doriți să verificați, de asemenea, erori fatale.

Notă: Această opțiune nu funcționează împreună cu -r.

Folosind această opțiune, PHP imprimă construit în (și încărcate) module PHP si Zend:

articole similare