1
a
lezione
3
Tipi di dato, variabili e operatori
L
a prima pagina PHP, inrealtà, l'abbiamo già realiz-zata (la solita
phpinfo.php
)e la possiamo quindi analizza-re. La parte iniziale e la parte fi-nale comprendono solo tag econtenuti HTML, mentre la “se-zione” PHP, quella interpretatadal parser tramite il server e re-stituita poi al client browser,viene chiaramente identificatadai tag
<?php
(inizio sezionePHP) e
?>
(fine sezione PHP).Questi tag possono essereaperti e chiusi quante volte sivuole in un listato HTML: ai finidell'efficienza nell'elaborazio-ne della pagina, infatti, è megliouscire dalla modalità PHP se sidevono passare blocchi di con-tenuti HTML “puri” (vale spe-cialmente per pagine compli-cate).Tutto quello che si trovacompreso tra i tag PHP vienequindi interpretato dal server erestituito al browser per la vi-sualizzazione: la funzione
ph- pinfo()
, infatti, restituisce tuttele caratteristiche settate per ilparser PHP installato nel ser-ver. Può essere curioso esami-nare il sorgente di questa pagi-na: sono tutti contenuti HTMLe della funzione
phpinfo()
, giu-stamente, non c'è alcuna trac-cia.Notate il “
;
” al termine dellariga compresa nei tag: tutte leistruzioni PHP terminano conquesto segnale di fine riga. Iltag di chiusura
?>
fa anche da“
;
” e quindi per l'ultima istru-zione prima della chiusura sipotrebbe anche eliminare il “
;
”,però è certamente meglio nonprendere certe abitudini e usa-re tutta la sintassi normalmen-te richiesta.Un secondo esempio,
hel- lo.php
, ci consente di introdur-rela funzione
echo
che ha loscopo di restituire un output(
listato 2 - hello.php
):
LISTATO2(hello.php)
<?phpecho “ciao PC OPEN”;?>
La funzione
print()
produceesattamente lo stesso output.È possibile anche introdurredei tag HTML all'interno dellasezione PHP come si può vede-re da
hello-html.php
(
listato 3
).Andranno inseriti all'interno di
echo
in quanto questi tagHTML devono diventare unoutput del parser:
LISTATO3
<?phpecho “<h1>Ciao PC OPEN</h1>”;?>
Per indicare inizio e finedella sezione PHP
Ci sono altri sistemi per in-dicare l'inizio e la fine della se-zione PHP:•
tag brevi
(short tag):basta indicare
<?
e
?>
. Perusarli deve essere apposita-mente configurato il parserPHP del server Web ospitante.Generalmente è così, ma l'usodi questi short tag è comunquesconsigliato per motivi di sicu-rezza: se, per qualunque moti-vo (manutenzione, aggiorna-mento, e così via), il parser noninterpretasse più in manieracorretta gli short tag, il vostrocodice diverrebbe visibile atutti (come nell'esempio vistoall'inizio).
• indicazione di script:
<script language="php">
e
</script>
. Non è sempre inter-pretato correttamente quindievitiamolo.•
ASP tag
: i tag sono gli stes-si usati per ASP:
<%
e
%>
. An-che in questo caso deve essereattivata un'apposita opzionedel parser (
asp_tags = On
), congli stessi problemi di sicurezzagià indicati per gli short tag.In
tag.php
trovate riuniti in-sieme questi ultimi tre modi diindicare il codice PHP (vedi
li- stato 4
).Per buona regola, è semprebene utilizzare
<?php
e cercaredi essere il più ordinati possi-bile, nell'eventualità di doverfare delle modifiche a distanzadi tempo.Per inserire dei commenti sipremettono al commento ledoppie slash
//
.
2
La prima pagina in PHP
Curiosità
In un'ottica di filosofia opensource si sente nominarel'acronimo
LAMP
. Essoindica un gruppodi prodotti divenuti, nel loroinsieme, un riferimentoper lo sviluppo di siti Web:
L
inux
A
pache
M
ySQL
P
HP
P
er iniziare realmente a usa-rePHP e scoprirne le ca-ratteristiche, abbiamo bi-sogno di spendere ancora qual-che minuto per introdurre lagestione delle variabili.Diversamente da ASP, conPHP non serve dichiarare espli-citamente le variabili indican-do nome e tipo, ma, più sem-plicemente, basta assegnare al-la variabile il suo valore: sarà ilparser ad attribuire alla varia-bile il giusto “tipo” (dichiara-zione implicita). Tutte le varia-bili vanno indicate col simbolo
$
davanti al nome scelto (il pri-mo digit dopo
$
non deve maiessere un numero).
Tipi di variabili scalari
Vediamo i quattro tipi di va-riabile scalare che abbiamo adisposizione:
$prova1
= 12;// $prova1 è un tipo di dato
intero(integer)
,
in questo esempio è un inte-roa base decimale, ma avrem-mo potuto fare una dichiara-zione con le notazioni esadeci-male o ottale. In caso di supe-ramento del limite massimoprevisto per un intero, PHP as-segna automaticamente alla va-riabile il tipo float.
$prova2
= 1,23;// $prova2 è un tipo di dato
a virgola mobile (float)
.
$prova3
= TRUE;// $prova3 è un tipo di dato
booleano (boolean)
,
ossia assume solo valori ve-ro(true) o falso (false). Il nu-mero 0 o una stringa vuota cor-rispondono al valore booleno
false
; un numero diverso da 0 ouna stringa non vuota corri-spondono al valore booleano
true
.
$prova4
= “pippo”;// $prova4 è un tipo di dato
stringa (string)
.
La stringa può essere defini-ta utilizzando le virgolette sin-gole ' (
single quotes
) o le virgo-lette doppie “ (
double quotes
).Nel proseguimento del corso siuserà la seconda notazione chepermette, tra le altre cose, diinserire dei nomi di variabili al-l'interno della dichiarazione
$1prova
= 1;// il nome della variabile nonè valido (numero dopo $)
Ridichiarando le variabili, oconcatenandole, PHP scegliesempre automaticamente il ti-po di dato da gestire. Se voles-simo sapere, ad esempio permotivi di debug, quale sia il ti-po di dato di una certa variabi-le, si può usare la funzione
gettype
:
<?php$prova = 1,2;echo gettype ($prova);// si ottiene avideo il tipo di dato: float?>
Il tipo può essere impostomediante l'istruzione
settype
all'atto già della dichiarazione
Leave a Comment