Claudiogarau.it :: Tutorials & Scripts, PHP, Linux and more.

Home ~ Php :: PHP e lo Shell Scripting :: Indice Php

PHP e lo Shell Scripting

Categoria: Php Inserito il: 27-03-2006 Stampa (7416 click)

PHP è principalmente un linguaggio destinato allo scripting server side, cioè alla generazione dinamica di contenuti per le pagine Web; questa caratteristica, ed alcune evidenti limitazioni rispetto ai più comuni linguaggi per la programmazione avanzata, lo rendono uno strumento meno adatto di altri (come ad esempio il Perl) per lo Shell Scripting, cioè per la richiesta di comportamenti da parte del sistema prodotti sulla base di istruzioni digitate tramite interfaccia testuale.

Ciò non vuol dire che PHP sia completamente alieno a questo discorso, anzi, nel corso di questa breve serie di articoli proveremo a descrivere tutti i vantaggi che possiamo ricavare dall'utilizzo associato della CLI (Command Line Interface) e di PHP.

Per eseguire PHP da linea di comando bisogna innanzitutto tenere a mente che non stiamo lavorando come faremmo per le pagine web, quindi nel lancio degli script verranno e dovranno essere eseguite tutte le istruzioni contenute nel codice tranne quelle riferite all'ambiente Web/HTML, quindi l'header HTTP che generalmente viene generato come intestazione dello stream di output non dovrà essere presente.

Prendiamo un semplice listato da processare tramite CLI, un ciclo while andrà benissimo:

<?
//variabili 
$n_mele = 2; 
$tot_mele = 10;
 
//ciclo while 
while($n_mele <= $tot_mele)
//istruzione 
{
  echo "Ho mangiato " .$n_mele. " mele";
  echo "posso mangiarne ancora ".($tot_mele - $n_mele)."\n"); 

//incremento 
$n_mele++; } 
?>
Sarà possibile digitare il codice appena descritto direttamente da Shell utilizzando il più diffuso editor di testo disponibile per Konsole in Linux: Vi.

Una volta scritto e salvato il nostro scriptino in una pagina chiamata, ad esempio, "while.php", potremo eseguirlo tramite CLI utilizzando il seguente comando:
$ php -q while.php
in conseguenza del quale verrà stampato l'output desiderato:
$ php -q test.php
Ho mangiato 2 mele, posso mangiarne ancora 8
Ho mangiato 3 mele, posso mangiarne ancora 7
Ho mangiato 4 mele, posso mangiarne ancora 6
Ho mangiato 5 mele, posso mangiarne ancora 5
Ho mangiato 6 mele, posso mangiarne ancora 4
Ho mangiato 7 mele, posso mangiarne ancora 3
Ho mangiato 8 mele, posso mangiarne ancora 2
Ho mangiato 9 mele, posso mangiarne ancora 1
Ho mangiato 10 mele, posso mangiarne ancora 0
$
Come avrete avuto modo di notare, per lanciare la CLI da Shell si dovrà utilizzare una sintassi che prevede:
  • Il comando php.
  • Un argomento, nel nostro caso abbiamo utilizzato -q che determina l'eliminazione dell'header HTTP.
  • Il nome del file contenente il codice da eseguire.
Attenzione: questo articolo è stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione, anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.

Cerca nel sito
Per sito
Sviluppatore di applicazioni Web con competenze evolute nella progettazione delle basi di dati, autore per alcune delle più importanti testate on line dedicate alla manualistica tecnica (HTML.it, MrWebmaster.it, Edit) e consulente per l'e-learning.
Tutte le categorie
Tutorial Random
Operazioni base di Apache: avvio, riavvio e arresto
Descrivere le semplici operazioni relative all'avvio, al riavvio e all'arresto di Apache, rappresenta un'utile occasione per approfondire il discorso riguardante... Leggi l'articolo
Corsi online per sviluppatori
Corsi per Webmaster, Web Designer, Programmatori, Grafici e Sistemisti