Circum Blog

Circum Net – IT – Conseils pratiques

PHP et les chaînes de caractères

PHP, Programmation

En PHP, les chaînes de caractères peuvent être définies en utilisant deux types de délimiteurs : les apostrophes doubles et les apostrophes simples.

Dans le cas d’une chaîne de caractères délimitée par des apostrophes doubles (double-quotes), les variables à l’intérieur de la chaîne de caractères seront remplacées par leur valeur. Comme en C ou en Perl, le caractère anti-slash (\) peut ici être utilisé pour “protéger” un caractère spécial.

Si la chaîne de caractères est par contre limitée par des apostrophes simples (simple-quotes), les variables présentes dans la chaîne ne seront pas substituées et le caractère anti-slash (caractère d’échappement), n’aura aucun effet (à deux exceptions près, pour \’ et \\ , afin de pouvoir utiliser les caractères simple-quote et anti-slash dans la chaîne de caractères).

De nombreux programmeurs privilégient la limitation par des apostrophes simples lorsque qu’aucune substitution n’est nécessaire. Il n’y a alors pas d’analyse de chaîne impliquée et c’est donc sensé faire gagner du temps à l’interpréteur PHP.

Quelques bonnes pratiques :

<?php
// préférez la concaténation à l'imbrication :
echo "Hello $name"; 
echo 'Hello' . $name; // recommandé

// attention aux indices de tableaux
echo $users[admin]; // faux, si si admin est une constante
echo $users['admin']; // recommandé

echo "Hello $users[admin]"; 
echo 'Hello' . $users['admin']; // recommandé
?>


Générer du PDF avec PHP

PHP, Programmation

Il s’avère souvent pratique dans une application (Web ou autre) de pouvoir fixer des données au format PDF : formulaire, certificat, version imprimable, fichier attaché. PHP 5 permet la génération dynamique de fichiers PDF.

La librairie PDFlib
En PHP, la librairie principale de production PDF est pour l’instant PDFlib. Cette API, riche en fonctionnalités, n’est cependant pas gratuite et est distribuée sous licence commerciale (une version gratuite appelée PDFlib Lite est également disponible).

Fonctionnalités proposées par PDFlib :

– mise en page standard
– images
– éléments graphiques
– annotations
– signets
– tableaux
– protection

Plus d’information et téléchargement : www.pdflib.com

FPDF
Une alternative à PDFlib consiste à utiliser la classe FPDF. Celle-ci, distribuée gratuitement, même si elle offre moins de possibilités est beaucoup plus accessible : pas d’installation préalable, pas de licence commerciale, simplicité de mise en oeuvre.

Pour l’utiliser, il suffit de télécharger le package FPDF, de le décompresser dans un répertoire accessible pour votre application et d’en inclure le fichier principal dans votre code.

Exemple de création d’un document PDF :

<?php
include('fpdf/fpdf.php');

$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',18);
$pdf->Cell(40,10,'Bonjour à tous!');
$pdf->Output("test.pdf");
?>

Vous trouverez la documentation de cette classe sur le site www.fpdf.org.