IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] php4 tableau asso de class


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Par défaut [Tableaux] php4 tableau asso de class
    est il possible de stocker des classes dans un tableau associatif?
    peut on boucler dessus avec un foreach?
    existe t'il des limitations particulieres liées aux classes?

  2. #2
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    oui tu peux, et tu peux utiliser foreach pour parcourir les références aux classes.

    Les seules limitations que je connais, c'est que si tu sauve un instance dans la session, alors tu dois faire un require de ta classe avant d'extraire les données de ta session

  3. #3
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Par défaut
    Citation Envoyé par marcha
    oui tu peux, et tu peux utiliser foreach pour parcourir les références aux classes.

    Les seules limitations que je connais, c'est que si tu sauve un instance dans la session, alors tu dois faire un require de ta classe avant d'extraire les données de ta session

    petite remarque, cela depend. Si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['rr'] = $obj;
    tu dois faire l'include avant le session_start();

    si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_SESSION['rr'] = serialize($obj);
    tu ne dois faire l'include qu'avant d'avoir fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     $obj = unserialize($_SESSION['rr']);

  4. #4
    Membre chevronné Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Par défaut
    tu dois faire l'include avant le session_start();
    je pense que rien ne passe avant un session_start.

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    en fait en envoie pas de flux a l'ecran avant session_start

  6. #6
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Par défaut
    Bebel a raison, PHP a besoin de connaitre l'objet avant sa déserialisation.

    Il faut savoir que le tableau $_SESSION est sérialisé / deserialisé par php (avec le gestionnaire de session par défaut)

    L'idée de sérialiser et déserialiser l'objet sois-même offre plus de souplesse. On perd un chtit peu de perf, car il y a double serialisation, mais bon :-)

  7. #7
    Membre chevronné Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Par défaut
    Comment se prendre la tete avec php...
    je sais pas ou je me suis trompé donc j'ai fais un petit test et ca marche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    class test {
    	var $name;
    	function test($n ){
    		$this->name = $n;
    	}
    	function brol( ){
    		echo 'test - brol : '.$this->name.'<br>';
    	}
    }
    $c1 = new test("c1");
    $c2 = new test("c2");
     
    $tab = array();
    $tab["c1"] = $c1;  
    $tab["c2"] = $c2; 
    $tab["c1"]->brol();
    je n'ai plus qu'a trouver mon erreur dans le "vrai" code... j'adore les pluka ;-)

Discussions similaires

  1. [Tableaux] Gestion tableau dans une classe
    Par lolodev dans le forum Langage
    Réponses: 5
    Dernier message: 06/08/2007, 13h19
  2. [Tableaux] Déclaration d'un tableau dans une classe
    Par rochenico dans le forum Langage
    Réponses: 4
    Dernier message: 22/12/2006, 11h29
  3. [Generics][Tableaux][Collections] Tableau liste entiers
    Par MyGoddess dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 04/11/2005, 12h44
  4. [Tableaux] Probléme Tableau / Menu
    Par carnage_59 dans le forum Langage
    Réponses: 7
    Dernier message: 13/10/2005, 13h34
  5. [Tableaux] Probleme tableau
    Par chocobos dans le forum Langage
    Réponses: 3
    Dernier message: 10/09/2005, 11h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo