PHP introducció
PHP és un llenguatge per generar codi HTML. De fet, les sigles "PHP" signifiquen "PHP: Hypertext Preprocessor" (definició recursiva).
PHP s'executa en el servidor, mai al client.
Arxius PHP i Apache
La manera més comuna de treballar és amb Apache i arxius .php enlloc dels clàssics .htm o .html. Un arxiu .php de fet sol combinar HTML i PHP. Apache executa l'arxiu .php i el resultat (totalment HTML) serà enviat al client.
Treballant amb Apache
- Si treballeu amb Apache al directori /var/www potser us serà còmode canviar el propietari d'aquesta carpeta al vostre usuari (amb chown). Així podreu escriure sense problemes i generar els vostres arxius .php allà mateix sense haver de fer "sudo".
- No convé posar permisos 777 a la carpeta /var/www per motius de seguretat.
- En Ubuntu, si instal·leu l'Apache amb el mòdul userdir (utilitzant el vostre directori ~/public_html d'usuari enlloc del /var/www) tingueu cura d'activar el PHP ja que per defecte està deshabilitat. Cal modificar l'arxiu /etc/apache2/mods-available/php5.conf i comentar amb "#" tota la secció <IfModule mod_userdir.c>. Us ha de quedar algo així:
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
Però anem d'una vegada al codi... :)
Primer arxiu PHP
Solem tenir pàgines HTML on insertem codi PHP. Per exemple:
<HTML>
<BODY>
<H1>Primer arxiu PHP</H1>
<?php
echo "<P>El primer paràgraf en PHP: utilitzem la instrucció 'echo'.</P>".
?>
</BODY>
</HTML>
Fixeu-vos en diverses coses:
- Per incrustar codi PHP cal obrir amb "<?php" i finalment tancar amb "?>".
- La instrucció echo (en color verd oliva) imprimeix text a l'arxiu que rep el client (el text va entre cometes dobles).
- Hem posat la segona paraula 'echo' entre cometes simples perquè si posem cometes dobles liaríem la sintaxi.
El client MAI REP CODI PHP. El resultat que ha de rebre el client és TOT HTML:
<HTML>
<BODY>
<H1>Primer arxiu PHP</H1>
<P>El primer paràgraf en PHP: utilitzem la instrucció 'echo'.</P>
</BODY>
</HTML>
Exercici
Fes un arxiu .php utiltizant la comanda echo per fer:
- títol (H1), subtítol (H2) i un paràgraf (P).
Afegeix al final del codi la instrucció phpinfo(); (en una línia a part).
- Quin resultat dóna?