VARIABLES EN PHP


Les variables en PHP són representades amb un signe de dòlar ($) seguit pel nom de la variable. El nom de la variable és sensible a minúscules i majúscules. És a dir, les següents declaracions de variables són diferents entre elles:

$Variable $variable, variable $, $VARIABLE, etc. representen una Diferents variables.

Recordar que una variable és un espai de la memòria de l'ordinador (en aquest cas del servidor) a la qual assignem un contingut que a grans trets pot ser un valor numèric (només números, amb el seu valor de càlcul) o alfanumèric (només text o text amb números, sense valor de càlcul).

Per declarar un nom de variable vàlid, aquest ha de començar amb una lletra (o si no comença amb una lletra, ho haurà de fer amb un caràcter de subratllat), seguit de qualsevol nombre de lletres, nombres i caràcters de subratllat, sense espais. Vegem alguns exemples:

Possible nom de variable

Validesa

$4variable

Nom de variable invàlid.

$_4variable

Nom de variable vàlid.

$Variable4

Nom de variable vàlid.

$Altra

Nom de variable vàlid.

$1_otra

Nom de variable invàlid.

$ Variable_de_nombre_muy_largo

Nom de variable vàlid.

$ABC

Nom de variable vàlid.

$ABC

Nom de variable invàlid.

$A_y_B_x_C

Nom de variable vàlid.

Quan l'intèrpret PHP detecta una errada en la sintaxi en declarar una variable, quan tractem de accecer a la pàgina php ens apareixerà un missatge d'error. Per exemple si en un arxiu php incloem una línia com $ABC = 5; on el nom de variable és invàlid ja que té espais intermedis, ens apareixerà un missatge d'error:

Parse error: error de sintaxi, T_STRING inesperat, esperant T_VARIABLE o "$" en /home/miraiz/domains/midominio.com/public_html/prueba.php en la línia 3. Aquest Missatge ens informa Que Hi Problema de l'ONU a l'arxiu php i ens indica la línia On l'intèrpret CONSIDERA Que aquesta El Problema.

 

 

DIFERÈNCIES ENTRE ELS OPERADORS D'ASSIGNACIÓ I IGUALTAT. ASSIGNACIÓ (=)

L'operador d'assignació és "=". Es podria pensar que és com un "igual a". No ho és. L'operador igual en programació no té el mateix sentit que en matemàtiques. En programació, vol dir que el valor de l'expressió de la dreta s'estableix a l'operand de l'esquerra.

Fixa't en aquest exemple i en els comentaris.

<? Php

 $a = 3 ; // Assignem el valor 3 a la variable $a

$b = "cadena" ; // Assignem el valor "cadena" a la variable $b

?>

 

 

OPERADOR D'IGUALTAT (==)

L'operador comparador d'igualtat és ==. Com el seu propi nom indica, serveix per comparar dos valors o variables i no per assignar valors. Aquest operador retorna el resultat de l'operació lògica de 'igual a "tal com podem apreciar en el següent exemple.

Fixa't en aquest exemple i en els comentaris.

<? Php

$a = 3;

$b = 3;

$a == $b; // El resultat de la comparació és TRUE perquè $a és igual a $b

$a = 3;

$b = 4;

$a == $b; // El resultat de la comparació és FALSE perquè $ a no és igual a $b

?>

 

 

TIPUS DE DADES

En PHP no és obligatori indicar el tipus de dades a què pertany una variable com en altres llenguatges, sinó que els tipus de dades són establerts directament per l'intèrpret PHP, que és l'encarregat d'interpretar el codi.

Ara veurem en una taula els diferents tipus de dades que es poden usar en PHP.

TIPUS DE DADA

DEFINICIÓ

sencer

Els integers, o sencers, poden tenir diferents valors numèrics sencers que s'expressen amb diferents notacions.

$variable=18;    // Nombre enter positiu

$variable=-18;   // Nombre enter negatiu

$variable=0x12; // Notació hexadecimal, en principi no la farem servir

surar o doble

Aquest tipus de dades són els números de punt flotant als que normalment anomenem "nombres decimals", per exemple, 9.876. Tots dos tenen molta precisió, però double és el més precís (amb més decimals). La sintaxi per utilitzar-los és bastant simple:

$variable=9,876;

cadena

El tipus de dades string, també conegut com a cadena de caràcters, s'expressa amb la següent sintaxi:

$variable="Jo sóc una cadena";

boolean

Es tracta d'un tipus lògic. Els seus possibles valors són true (vertader) o false (fals).

Variable$=true;

$variable=false;

 

 

INSTRUCCIÓ ECHO

Aquesta instrucció moltes vegades es diu que serveix perquè es mostri per pantalla un text, una variable, o una combinació de text i variables. Però realment no és així: fet no és una instrucció que serveixi per mostrar alguna cosa per pantalla (encara que podem usar-la per això), sinó que serveix per a inserir text dins del document HTML subjacent al codi PHP.

Per exemple: echo "sortida per pantalla."; farà que s'insereixi aquest text en el document html. Si ho fem entre les etiquetes <body> i </ body> el veurem per pantalla perquè qualsevol text inserit en aquest lloc es mostrarà per pantalla, no perquè la instrucció echo doni lloc al fet que es mostri per pantalla.

No obstant això echo "<h1> Sortida per pantalla. </H1>"; no farà que es mostrin per pantalla les etiquetes h1 i el text, sinó que introduirà en el document HTML les etiquetes amb el text, aquestes etiquetes funcionaran com a codi HTML i el que es mostrarà per pantalla serà Sortida per pantalla amb format de títol h1 (lletres més grans del normal).

En general en php són vàlides tant les cometes dobles com les cometes simples, de manera que es pot escriure tant echo "<h1> Sortida per pantalla. </H1>"; com echo '<h1> Sortida per pantalla. </H1> ';

Els parèntesis no són necessaris (trobo en realitat no és una funció sinó que és el que es denomina una << construcció del llenguatge >>, per aquest motiu no siguin estrictament necessaris els parèntesis), però es poden incloure si es desitja. Exemple: echo ('amb parèntesis i cometes simples');

Crea un arxiu php amb el següent codi, posa-li un nom com usoDeEcho.php i penja'l al servidor. Després invócalo usant la ruta adequada segons la direcció web amb la qual estiguis treballant (serà similar a http://apr2.byethost7.com/usoDeEcho.php.)

<? Php

echo "sortida per pantalla." ;

$a=5 ;

echo $a ;

echo "El valor d'a és $a." ;

?>

La visualització al navegador haurà de ser similar a aquesta. Pot variar lleugerament depenent del navegador que facis servir.

Tingues en compte que $a es mostra per pantalla com 5 perquè l'intèrpret de PHP considera que ha de mostrar-sempre el valor de la variable, fins i tot si va dins d'un text. Prova a escriure la següent línia: echo "El valor de la variable \$a és $a.";

Comprovaràs que es mostra per pantalla "sortida per pantalla. 5 El valor de la variable $a és 5. "

Quan antecedemos un nom de variable del caràcter \ fem que s'interpreti com a text en lloc de com una variable. El caràcter \ se sol anomenar "caràcter d'escapament" perquè permet que es consideri text cosa que en principi s'anava a interpretar com una altra cosa (com una variable per exemple).

Crea ara un arxiu php amb el següent codi, posa-li un nom com usoDeEcho2.php i penja'l al servidor. Després invoca'l usant la ruta adequada segons la direcció web amb la qual estiguis treballant (serà similar a http://apr2.byethost7.com/usoDeEcho2.php.)

<Html>

<Head>

<Títol> php Example  </title>

<Charset meta = "UTF-8">

</Head>

<Body>

<? Php

echo 'amb cometes simples <br/>';

echo ('amb parèntesis i cometes simples <br/>');

echo ("amb parèntesis i cometes dobles <br/>");

echo '<h1> Sortida per pantalla </h1> <br/>';

echo "sortida per pantalla.";

$a=5;

echo $a;

echo "El valor d'a és $a.";

?>

</Body>

</Html>

La visualització al navegador haurà de ser semblant a:

amb cometes simples

amb parèntesis i cometes simples

amb parèntesis i cometes dobles

Sortida per pantalla

sortida per pantalla. 5 El valor de a és 5.

 

Pots comprovar que <br/> no es mostra per pantalla perquè és codi HTML, i el navegador quan detecta aquest codi HTML introdueix un salt de línia en lloc de mostrar-ho per pantalla.

Per comprendre bé la utilitat de la instrucció echo pensa en aquesta equivalència:

<Body>

<? php

echo '<h1> Cusco </h1>'

?>

</Body>

- - - Equival a  - ->

<Body>

<H1> Cusco </h1>

</Body>

El navegador rep l'HTML "equivalent" generat i l'interpreta, donant lloc als resultats que es mostraran per pantalla.

 

 

EXERCICI 1

Crea el següent arxiu i penja'l mitjançant ftp al directori arrel del teu lloc web. L'arxiu portarà per nom curso3.php i en ell hi ha d'haver l'estructura d'un document HTML, aparèixer a la part superior de la pàgina un títol h1 amb el text << Cursos aprenderaprogramar.com >>, seguit d'un títol h2 amb el text << Curs php des de zero >>, ia continuació fer que es mostri usant trobo el següent text dins d'un div amb color de fons groc: << Curs php de aprenderaprogramar.com usant el comandament echo >>. A sota d'aquest text has de fer servir trobo per crear un contenidor div amb color de gris on pugui llegir-se "Aquest és el peu de pàgina". Comprova que l'arxiu es visualitza en escriure l'adreça web correcta que serà similar a http://apr2.byethost7.com/curso3.php (en el teu cas, hauràs d'escriure l'adreça web que utilitzeu per al curs). Respon a aquesta pregunta: Quin és el codi que conté l'arxiu? Quina és l'adreça web per accedir a l'arxiu i visualitzar el text?

 

 

EXERCICI 2

Crea un arxiu php on no hi hagi html directament però que generi una pàgina web amb tot el codi html que porta normalment (introdueix les etiquetes html, head, title, meta charset, body, alguns paràgrafs de text i algunes imatges). Per fer això tota l'estructura de la pàgina web ha de ser inserida a través d'instruccions fet. Respon a aquesta pregunta: Quin és el codi que conté l'arxiu? Quina és l'adreça web per accedir a l'arxiu i visualitzar el text?