![]() |
|
||||||||||||||||
![]() |
||||||||||||||||
Pràctica |
![]() |
Exercicis
|
||||||||||||||
|
|||||||||||||||
Inclusió de fitxers. Variables i arrays | |||||||||||||||
L'objectiu d'aquesta pràctica és fer una introducció a les possibilitats del PHP pel que fa a la inserció de fitxers i treballar noves característiques de la seva sintaxi. Així, veurem:
|
|||||||||||||||
Inclusió de fitxers externs i biblioteques | |||||||||||||||
![]() |
Veurem ara com incloure un fitxer que ens farà d'encapçalament de la pàgina: |
||||||||||||||
Copieu el codi següent en el vostre editor i deseu-lo amb el nom de m2p21.php | |||||||||||||||
<?php |
|||||||||||||||
Llistat 2.2.1. Codi del fitxer principal |
|||||||||||||||
Copieu també el codi que hi ha a continuació i deseu-lo amb el nom de cap.php | |||||||||||||||
<table width="100%" border="0" cellpadding="6"
cellspacing="0" bgcolor="#003366"> <tr> <td bgcolor="#CCCCFF"><font color="#333366" size="2" face="Verdana, Arial, Helvetica, sans-serif"><b> <?php echo TITOL; ?><br> <?php echo "Avui és: ".date("d/m/Y"); ?> </b> </font></td> </tr> </table> |
|||||||||||||||
Llistat 2.2.2.
Codi del fitxer inclòs: 'cap.php' |
|||||||||||||||
En el codi de m2p21.php hem fet dues coses diferents: Per un cantó, hem definit unes constats mitjançant la funció define(). define("TITOL","D116-Creació i gestió d'entorns web dinàmics (PHP)"); Només cal assignar-li un nom (normalment es posen en majúscula) i, després d'una coma, el valor que tindrà aquella constant. En el nostre cas, hem definit "TITOL" (cadena) que, a partir d'aquí, podrem utilitzar on vulguem. Cada vegada que posem TITOL en qualsevol lloc del codi, serà substituït pel valor que li hem assignat. define("B","<br>"); També hem definit la constant B, que contindrà predefinida l'etiqueta <br> del codi HTML. Per un altre cantó, hem inclòs mitjançant la sentència include() un fitxer extern. include( "cap.php" ); Això vol dir que s'inclourà el codi del fitxer cap.php en el lloc en què situem l'include i, funcionalment serà com si fos un sol fitxer. Hi ha també la funció include_once() que només inclourà el fitxer una vegada com a màxim en un script. Igualment, també disposem de require() i require_once(). En el fitxer cap.php utilitzem, també, una altra funció del PHP: date(). Segons els diferents paràmetres que li passem i que podeu veure a la pàgina de referència, ens torna la data del sitema en el moment de l'execució del codi en diferents formats. |
|||||||||||||||
![]() |
Cal anar amb compte amb la ubicació del fitxer que s'ha d'incloure. En l'exemple es pressuposa que el fitxer cap.php es troba al mateix directori que el principal. En cas contrari, caldria entrar el camí on es troba aquest fitxer. | ||||||||||||||
![]() |
Quan incloem un fitxer, si conté codi php, cal tornar a indicar l'obertura i el tancament d'aquest codi amb <?php i ?> | ||||||||||||||
Variables | |||||||||||||||
![]() |
No cal que recordem que les variables són una mena de contenidors, el valor dels quals pot anar canviant al llarg del programa. En PHP trobem cinc tipus de variables: Integer, Double, String, Array i Object. El PHP gestiona de manera automàtica els tipus de variables i fa les conversions convenients. |
||||||||||||||
<?php // definició de variables // Inserció de les variables dins la cadena |
|||||||||||||||
Llistat 2.2.3. Definició
i presentació de variables |
|||||||||||||||
Comentem algunes idees bàsiques:
Si executeu l'script del llistat 2.2.3, veureu que definim variables de cadena, els valors entre cometes ($nom, $cognom1, $cognom2 i $poblacio) i numèric ($edat), amb el valor sense cometes. Després de la definició, mostrem els valors mitjançant la sentència echo. Fixeu-vos que si utilitzem les cometes dobles (") per al contingut de echo, podem inserir directament les variables dins la cadena, independentment del tipus de variable de què es tracti: echo "Tens $edat anys <br> \n";
$edat inserida en la cadena De vegades, aquest sistema pot comportar algun problema d'intepretació. Per això veurem a l'apartat següent com podem concatenar variables i cadenes. |
|||||||||||||||
![]() |
La inserció directa de variables en la cadena no funciona si aquesta va entre cometes simples ('): echo 'Vius a $poblacio <br> \n'; no funcionarà. | ||||||||||||||
![]() |
El PHP aporta algunes funcions molt interessants a l'hora de treballar amb variables, entre les quals podem destacar: | ||||||||||||||
|
|||||||||||||||
![]() |
Els noms de les variables distingeixen entre minúscules i majúscules ("case sensitive", en anglès). És a dir que $nomvariable i $NomVariable serien dues variables diferents. | ||||||||||||||
Concatenació de cadenes i variables | |||||||||||||||
A diferència d'altres llenguatges, el signe de concatenació en PHP és el punt (.). Si reprenem el codi anterior i l'escrivim de manera concatenada resulta: | |||||||||||||||
<?php // definició de variables // Concatenació |
|||||||||||||||
Llistat 2.2.4. Variables
i cadenes concatenades |
|||||||||||||||
Ja veieu que mitjançant el punt (.) hem unit les cadenes i les variables, tant si són numèriques com de text. | |||||||||||||||
![]() |
En PHP, no cal transformar les variables numèriques a text abans de concatenar-les amb un text o amb una altra variable que contingui text: el llenguatge ho fa automàticament. | ||||||||||||||
Arrays o matrius | |||||||||||||||
Si volem tenir desats més d'un valor en una variable, podem utlilitzar els arrays o matrius. Aquest tipus de variable funciona de manera semblant a d'altres llenguatges, però amb alguna particularitat. Imagineu que volguéssim tenir en una sola variable les possibles qualificacions acadèmiques de l'alumnat. Podem definir-ho de dues maneres: |
|||||||||||||||
<?php $nota[0]="Insuficient"; // Si no posem subíndex, automàticament s'assigna la següent
// Definició abreujada dels elements d'un array (equivalent a
echo "Qualificació: ". $nota[4]; |
|||||||||||||||
Llistat 2.2.5. Definició
dels elements d'un array |
|||||||||||||||
![]() |
Observeu que el primer número d'índex dels arrays és sempre 0 i no pas 1. | ||||||||||||||
Arrays associatius | |||||||||||||||
Una de les particularitats del PHP és la possibilitat de poder substituir els números d'índex per alguna paraula que associem a l'element. Així, seguint l'exemple anterior, podem definir: | |||||||||||||||
<?php $nota["I"]="Insuficient"; echo "Valors assignats directament <br>"; // Definició abreujada dels element d'un array associatiu echo "Definició abreujada d'elements <br>"; |
|||||||||||||||
Llistat 2.2.6. Definició
dels elements d'un array associatiu |
|||||||||||||||
Ja veieu que en lloc d'assignar a cada element un número d'índex, li assignem una etiqueta o clau amb el qual es relaciona. Per fer-ho de manera abreujada, utilitzem l'operador => . | |||||||||||||||
![]() |
El PHP, a part de la funció array() que acabem de veure, ofereix una bona quantitat de funcions relacionades amb matrius o arrays que permeten, per exemple, ordenar-ne els elements, fer una cerca, avançar o retrocedir, etc. | ||||||||||||||
![]() |
És important tenir clar el concepte d'array associatiu, perquè el PHP ofereix una bona quantitat de variables que transmet mitjançant arrays d'aquest tipus ($_POST, $_GET, $_COOKIE, $_SERVER, etc.). En pràctiques posteriors en veurem el funcionament. | ||||||||||||||
![]() |
|||||||||||||||
|
|||||||||||||||