PHP
PHP / MySql

Recherche
 
ManuelPHP.com

Retourner des valeurs complexes
<<<
Utilisation de la liste des ressources Utilisation de la table des ressources persistantes
>>>

9.4.1 Créer une fonction PHP
9.4 Étendre PHP 3
9 PHP et le moteur interne Zend
 Manuel PHP

Prototypes de fonctions
Arguments de fonctions
Fonctions à nombre d'arguments variable
Utiliser les arguments d'une fonction
Gestion de la mémoire dans une fonction
Affecter une variable dans la table des symboles
Retourne une valeur simple
Retourner des valeurs complexes
->Utilisation de la liste des ressources
Utilisation de la table des ressources persistantes
Ajouter des directives de configuration à l'exécution

9.4.1.9 Utilisation de la liste des ressources

PHP dispose de standards pour traiter un certains nombre de ressources. Ils remplacent tous les listes de PHP 2.0.

Fonctions accessibles :

  • php3_list_insert(ptr, type) - retourne l'identifiant 'id' de la nouvelle ressource insérée.
  • php3_list_delete(id) - efface la ressource d'identifiant id
  • php3_list_find(id,*type) - retourne le pointeur de la ressource d'identifiant id, et modifie le type 'type'
Typiquement, ces fonctions sont utilisées pour les pilotes SQL, mais elles peuvent servir n'importe quoi d'autre. Par exemple, conserver un pointeur de fichier.

La liste standard de code ressemble à ceci :

Ajouter une nouvelle ressource

RESOURCE *resource;

/* ...alloue de la mémoire pour la ressource, et l'acquiert ... */
/* Ajoute la nouvelle ressource dans la liste */
return_value->value.lval = php3_list_insert((void *) resource, LE_RESOURCE_TYPE);
return_value->type = IS_LONG;
Utiliser une ressource existante

pval *resource_id;
RESOURCE *resource;
int type;

convert_to_long(resource_id);
resource = php3_list_find(resource_id->value.lval, &type);
if (type != LE_RESOURCE_TYPE) {
    php3_error(E_WARNING,"la ressource dont l'index est %d a un type incorrect",resource_id->value.lval);
    RETURN_FALSE;
}
/* ...utilisation de la ressource... */
Effacer une ressource existante

pval *resource_id;
RESOURCE *resource;
int type;

convert_to_long(resource_id);
php3_list_delete(resource_id->value.lval);
Les types de ressources doivent être enregistré dans le fichier php3_list.h, dans l'énumération list_entry_type. En plus, il faut penser à ajouter une fonction de terminaison, pour chaque type de ressource défini, dans le fichier list.c, pour la fonction list_entry_destructor() (même si vous n'avez rien de particulier à faire lors de la terminaison, vous devez au moins ajouter un cas vide).

<< Utilisation de la liste des ressources >>
Retourner des valeurs complexes Créer une fonction PHP Utilisation de la table des ressources persistantes





Google

Services webmasters

Les manuels
 

ManuelPHP.com © 2003-2012 Tigersun - Crédits
Webmaster Site Internet - Télécharger des Logiciels - Programme TV - Entraide Informatique - Agence de Communication
2012-05-25