dl

(PHP 3, PHP 4, PHP 5)

dl -- Charge une extension PHP à la volée

Description

int dl ( string library )

dl() charge l'extension PHP library à la volée. Le paramètre library est seulement le nom de fichier de l'extension, qui dépend de votre plate-forme. Par exemple l'extension sockets (si compilée comme module partagé, et non par défaut), sera appelée sockets.so sous Unix, et php_sockets.dll sous Windows.

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.. Si la fonctionnalité de chargement de module n'est pas disponible (voir Note), ou a été désactivée (soit en désactivant la directive enable_dl ou en activant le safe mode dans le php.ini) une E_ERROR sera émise et l'exécution du script sera stoppée. Si la fonction dl() échoue parce que la bibliothèque n'a pu être trouvée, dl() retournera FALSE et émettra un message d'alerte E_WARNING.

Utilisez la fonction extension_loaded() pour vérifier qu'une extension est chargée ou non. Cette fonction travaille aussi bien avec les extensions natives qu'avec les extensions dynamiquement chargées (via le php.ini ou dl()).

La fonction dl() est obsolète depuis PHP 5. Utilisez les directives d'extensions de chargement à la place.

Exemple 1. Exemple avec dl()

<?php
// Chargement pour toutes plates-formes
if (!extension_loaded('sqlite')) {
  if (
strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') {
  
dl('php_sqlite.dll');
  } else {
  
dl('sqlite.so');
  }
}

// Mais la constante PHP_SHLIB_SUFFIX est disponible depuis PHP 4.3.0
if (!extension_loaded('sqlite')) {
 
$prefix = (PHP_SHLIB_SUFFIX === 'dll') ? 'php_' : '';
 
dl($prefix . 'sqlite.' . PHP_SHLIB_SUFFIX);
}

?>

Le dossier à partir duquel sont chargées vos extensions dépend de votre plate-forme :

Windows - S'il n'est pas explicitement indiqué dans le fichier php.ini, le dossier des extensions est c:\php4\extensions\.

Unix - S'il n'est pas explicitement indiqué dans le fichier php.ini, le dossier des extensions dépend de

  • Si PHP a été compilé avec l'option --enable-debug ou non

  • Si PHP a été compilé avec le support (expérimental) de ZTS (Zend Thread Safety) ou non

  • de la constante interne ZEND_MODULE_API_NO (version interne de module d'API Zend, qui est en réalité la date à laquelle une modification importante de l'API a été faite, par exemple 20010901)

En prenant ces paramètres en considération, le dossier des extensions vaut alors <php-install-directory>/lib/php/extension/<debug-or-not>-<zts-or-not>-ZEND_MODULE_API_NO, i.e. /usr/local/php/lib/php/extensions/debug-non-zts-20010901 ou /usr/local/php/lib/php/extensions/no-debug-zts-20010901.

Note : dl() n'est pas supportée sur les serveur web multi-threadés. Utilisez la directive extensions dans votre fichier php.ini lorsque vous vous trouvez dans un environnement de ce type. Cependant, les versions CGI et CLI ne sont pas affectées !

Note : Depuis PHP 6, cette fonction est désactivée dans tous les SAPIs, exceptés CLI, CGI et embarqué.

Note : dl() est sensible à la casse sur les plates-formes Unix.

Note : Cette fonction est désactivée par le safe-mode

Voir aussi directives de chargement d'extensions et extension_loaded().



Rechercher une fonction PHP

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

5 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Références

  1. Consulter le document html Langue du document: fr Manuel PHP : http://be2.php.net, dl

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-3806
Document créé le 20/09/06 22:53, dernière modification le Vendredi 17 Juin 2011, 12:12
Source du document imprimé : http://www.gaudry.be/php-rf-function.dl.html Document affiché 2 fois ce mois de Juin.
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Navigation (masquer)
Apparence (afficher)
Stats (afficher)
15832 documents
452 astuces.
549 niouzes.
3099 definitions.
447 membres.
8115 messages.

Document genere en :
0,42 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Réfléchis, décide et agis! N'aies pas de doutes, l'incapacité d'assumer ses propres choix engendre un certain mal de vivre. Chaque question peut devenir un jeu, chaque décision prise pourra t'apprendre à te connaître, à te comprendre.

Marc Levy [Extrait de Et si c'était vrai...]
 
l'infobrol
Nous sommes le Samedi 02 Juin 2012, 18:25, toutes les heures sont au format GMT+1.00 Heure, heure d'été (+1)