CodeIgniter - Bibliothèques
La partie essentielle d'un framework CodeIgniter est ses bibliothèques. Il fournit un riche ensemble de bibliothèques, qui augmentent indirectement la vitesse de développement d'une application. La bibliothèque système se trouve dans système / bibliothèques. Tout ce que nous avons à faire est de charger la bibliothèque que nous voulons utiliser. La bibliothèque peut être chargée comme indiqué ci-dessous -
$this->load->library('class name');
Où class nameest le nom de la bibliothèque que nous voulons charger. Si nous voulons charger plusieurs bibliothèques, nous pouvons simplement passer un tableau comme argument àlibrary() fonction comme indiqué ci-dessous -
$this->load->library(array('email', 'table'));
Classes de bibliothèque
Les classes de bibliothèque sont situées dans system/libraries. Chaque classe a diverses fonctions pour simplifier le travail de développement. Le tableau suivant montre les noms de la classe de bibliothèque et sa description.
SN | Classe de bibliothèque et description |
---|---|
1 | Benchmarking Class La classe d'analyse comparative est toujours active, ce qui permet de calculer la différence de temps entre deux points marqués. |
2 | Caching Class Cette classe mettra en cache les pages, pour accéder rapidement à la vitesse de la page. |
3 | Calendaring Class En utilisant cette classe, vous pouvez créer dynamiquement des calendriers. |
4 | Shopping Cart Class En utilisant cette classe, vous pouvez ajouter ou supprimer un article du panier. Les éléments sont enregistrés en session et resteront actifs jusqu'à ce que l'utilisateur navigue sur le site. |
5 | Config Class Les préférences de configuration peuvent être récupérées à l'aide de cette classe. Cette classe est initialisée automatiquement. |
6 | Email Class Cette classe fournit des fonctionnalités liées aux e-mails, telles que l'envoi ou la réponse à un e-mail. |
sept | Encryption Class Cette classe fournit une fonctionnalité de chiffrement de données bidirectionnel. |
8 | File Uploading Class Cette classe fournit des fonctionnalités liées au téléchargement de fichiers. Vous pouvez définir diverses préférences telles que le type de fichier à télécharger, la taille des fichiers, etc. |
9 | Form Validation Class Cette classe fournit diverses fonctions pour valider le formulaire. |
dix | FTP Class Cette classe fournit diverses fonctions liées au FTP comme le transfert de fichiers pour supprimer le serveur, le déplacement, le changement de nom ou la suppression de fichiers sur le serveur. |
11 | Image Manipulation Class La manipulation de l'image comme le redimensionnement, la création de vignettes, le recadrage, la rotation, le filigrane peut être effectuée à l'aide de cette classe. |
12 | Input Class Cette classe pré-traite les données d'entrée pour des raisons de sécurité. |
13 | Language Class Cette classe est utilisée pour l'internationalisation. |
14 | Loader Class Cette classe charge des éléments tels que les fichiers d'affichage, les pilotes, les assistants, les modèles, etc. |
15 | Migrations Class Cette classe fournit des fonctionnalités liées aux migrations de bases de données. |
16 | Output Class Cette classe envoie la sortie au navigateur et met également en cache cette page Web. |
17 | Pagination Class Cette classe ajoute des fonctionnalités de pagination à la page Web. |
18 | Template Parser Class La classe d'analyseur de modèle peut effectuer une substitution de texte simple pour les pseudo-variables contenues dans vos fichiers de vue. Il peut analyser des variables simples ou des paires de balises variables. |
19 | Security Class Cette classe contient des fonctions liées à la sécurité comme le filtrage XSS, CSRF, etc. |
20 | Session Library Cette classe fournit des fonctionnalités pour maintenir la session de votre application. |
21 | HTML Table Cette classe est utilisée pour générer automatiquement des tableaux HTML à partir des résultats d'un tableau ou d'une base de données. |
22 | Trackback Class La classe Trackback fournit des fonctions qui vous permettent d'envoyer et de recevoir des données de rétrolien. |
23 | Typography Class La classe Typography fournit des méthodes qui aident à mettre en forme du texte. |
24 | Unit Testing Class Cette classe fournit des fonctionnalités pour tester l'unité de votre application et générer le résultat. |
25 | URI Class La classe URI fournit des méthodes qui vous aident à récupérer des informations à partir de vos chaînes URI. Si vous utilisez le routage URI, vous pouvez également récupérer des informations sur les segments réacheminés. |
26 | User Agent Class La classe d'agent utilisateur fournit des fonctions qui aident à identifier les informations sur le navigateur, l'appareil mobile ou le robot visitant votre site. En outre, vous pouvez obtenir des informations sur le référent ainsi que des informations sur la langue et les jeux de caractères pris en charge. |
27 | XML-RPC and XML-RPC Server Classes Les classes XML-RPC de CodeIgniter vous permettent d'envoyer des requêtes à un autre serveur ou de configurer votre propre serveur XML-RPC pour recevoir des requêtes. |
28 | Zip Encoding Class Cette classe est utilisée pour créer des archives zip de vos données. |
Création de bibliothèques
CodeIgniter a un riche ensemble de bibliothèques, que vous pouvez trouver dans system/libraries mais CodeIgniter n'est pas seulement limité aux bibliothèques système, vous pouvez également créer vos propres bibliothèques, qui peuvent être stockées dans application/librariesdossier. Vous pouvez créer des bibliothèques de trois manières.
- Créer une nouvelle bibliothèque
- Étendre la bibliothèque native
- Remplacer la bibliothèque native
Créer une nouvelle bibliothèque
Lors de la création d'une nouvelle bibliothèque, il convient de garder à l'esprit les choses suivantes -
- Le nom du fichier doit commencer par une majuscule, par exemple Mylibrary.php
- Le nom de la classe doit commencer par une majuscule, par exemple class Mylibrary
- Le nom de la classe et le nom du fichier doivent correspondre.
Mylibrary.php
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Mylibrary {
public function some_function() {
}
}
/* End of file Mylibrary.php */
Loading the Custom Library
La bibliothèque ci-dessus peut être chargée en exécutant simplement la ligne suivante dans votre contrôleur.
$this->load->library(‘mylibrary’);
mylibrary est le nom de votre bibliothèque et vous pouvez l'écrire aussi bien en minuscules qu'en majuscules. Utilisez le nom de la bibliothèque sans l'extension «.php». Après avoir chargé la bibliothèque, vous pouvez également appeler la fonction de cette classe comme indiqué ci-dessous.
$this->mylibrary->some_function();
Étendre la bibliothèque native
Parfois, vous devrez peut-être ajouter vos propres fonctionnalités à la bibliothèque fournie par CodeIgniter. CodeIgniter fournit des fonctionnalités par lesquelles vous pouvez étendre la bibliothèque native et ajouter vos propres fonctions. Pour ce faire, vous devez étendre la classe de la classe de bibliothèque native. Par exemple, si vous souhaitez étendre la bibliothèque de courrier électronique, cela peut être fait comme indiqué ci-dessous -
Class MY_Email extends CI_Email {
}
Ici, dans l'exemple ci-dessus, la classe MY_Email étend la classe de messagerie CI_Email de la bibliothèque native. Cette bibliothèque peut être chargée par la méthode standard de chargement de la bibliothèque de courrier électronique. Enregistrez le code ci-dessus dans le fichier My_Email.php
Remplacer la bibliothèque native
Dans certaines situations, vous ne souhaitez pas utiliser la bibliothèque native comme elle fonctionne et souhaitez la remplacer par votre propre manière. Cela peut être fait en remplaçant la bibliothèque native. Pour ce faire, il vous suffit de donner le même nom de classe que dans la bibliothèque native. Par exemple, si vous souhaitez remplacer leEmail class, puis utilisez le code comme indiqué ci-dessous. Enregistrez votre nom de fichier avecEmail.php et donnez un nom de classe à CI_Email.
Email.php
Class CI_Email {
}