Accueil > Forum > > > > petites questions de débutant sur les tableaux
petites questions de débutant sur les tableaux
mardi 11 janvier 2005 à 21:02:02 |
petites questions de débutant sur les tableaux

johanb
|
bonjour à tous, alors voilà je me lance juste dans le PHP, et j'aimerais poser quelques questions a propos des tableaux.je possède les bases en c/c++ et java, mais j'ai un peu de mal à me faire à PHP.En fait j'ai créé une page avec des script en javascript, et j'aimerais le transcrire en php.Je sais bien que javascript est très permissif, donc j'ai quelques problêmes en passant au php.donc voici mes questions: -je souhaiterais créer un tableau vide (d'une longueur spécifiée car jimagne que ce n'est pas possible de créer un tableau de longueur non déterminée) -le remplir. seulement, je ne sais pas si c'est possible et je ne parvient pas à trouver une fonction retournant la longueur du tableau. voici en gros ce que donnait le code en javascript: for(var j=1;j<=1000;j++){ var tab=new array(); tab[tab.length]="valeur"+tab.length //tab contiendrais {"valeur1","valeur","valeur3",...} //à l'ajout, tab.length est incrémenté automatiquement, //donc lors du repassage dans la boucle on continue ainsi de suite } et voici ce que donnerai le php avec quelques modifications: $i=0; $tab=array[TAILLE]; //la je voudrais savoir comment créer un tableau de taille spécifique for($i=0;$i<=$tab.length;$i=$i+1){ //insertion: $tab[i]="valeur".$i; //i est un compteur incrémenté à chaque insertion } j'aimerais donc avoir votre avis concernanrt ceci, en me signalant d'être plus clair sur ceetains point si je n'ai pas su me faire comprendre en vous remerciant
|
|
mardi 11 janvier 2005 à 21:09:30 |
Re : petites questions de débutant sur les tableaux

johanb
|
oui, je voulais préciser qu'il s'agissait juste d'exemples, car mon cas ets un peu plus délicat: j'ai ue classe toolbar,menu et sousmenu
class toolbar{ var $toolbar; function toolbar(){ //constructeur $toolbar=new array(); } function addMenu($label){ $this->toolbar[indice]=new menu("menu_".$toolbar_length."p",$label) } }
naturellement, indice indiquerai l'indice dans le tableau, cad la "premiere case libre" et la taille du tableau est necessair par la suite pour l'affichage de tous les éléments
|
|
mardi 11 janvier 2005 à 21:22:28 |
Re : petites questions de débutant sur les tableaux

GRenard
|
Oh, php est très gentil :)
tu create un tableau comme tu las mentionné dans ton 2e message sans new :
$toolbar = array(); Pour ajouter des chosesd ans $toolbar tu fais $toolbar[] = "something";
Ton for fonctionne sauf qu'il manque un $ devant ton i dans les crochets.
Pour ce qui est de la classe, tu l'a a moitié... c'est pas $toolbar = new array() c'est $this->toolbar = array();
(le this est pour mentionné que la variable se trouve dans la classe... comme dans ta fonction addMenu
Longueur de $toolbar, c'est count($this->toolbar);
Va vraiment lire la documentation de PHP à la base... car je pense que tu veux sauter trop vite à la compréhension de php !
Bonne chance.
PHP Guru Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles. [ Lien ]
|
|
mardi 11 janvier 2005 à 21:23:18 |
Re : petites questions de débutant sur les tableaux

GRenard
|
N'oublie pas que PHP s'exécute coté serveur ! par opposition au JavaScript qui s'exécute coté client ! PHP Guru Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles. [ Lien ]
|
|
mardi 11 janvier 2005 à 21:48:25 |
Re : petites questions de débutant sur les tableaux

johanb
|
merci pour tout.
execution coté serveur: ouioui, t'inkète je sais bien ça.je suis en 2eme année de dut info, mais c que j'ai un peu de mal avec la syntaxe.la j'ai juste marqué ça vite fait, mais c correct dans mon vrai code
la doc php je voudrais bien la lire, mais je veux pas y passer des années.Tout le reste je l'ai, j'ai la méthode, il me manque juste le nom des fonctions (la syntaxe ça peut aller, ça ressemble au c)
|
|
mardi 11 janvier 2005 à 23:07:15 |
Re : petites questions de débutant sur les tableaux

johanb
|
j'ai un autre problême:j'ai défini mes classes dans un fichier classes.php et mon code dans un fichier toolbar.php:
classes.php <?php
//creation du menu (toolbar) class toolbar { var $toolbar; function toolbar(){ //constructeur $this->toolbar=array(); } function addMenu($label,$txtcolor,$bgcolor,$lien) { $this->toolbar[]=new menu("menu_".count($this->toolbar),$label,$txtcolor,$bgcolor,$lien); } } class menu { var $id; //identifiant var $label; //etiquette var $txt_color; //couleur de texte var $bg_color; //couleur de fond var $lien; //lien var $tab_sousMenu; //tableau des sous menus
function menu($id,$label,$color,$bgcolor,$lien) { //constructeur $this->id=$id; $this->label=$label; $this->txtcolor=$color; $this->bgcolor=$bgcolor; $this->lien=$lien; $this->tab_sousMenu=array();
} function addSubMenu($label,$lien) { //méthode $this->tab_sousMenu[]=new sousMenu($this->id."_"+count($this->tab_sousMenu),$label,$lien);
} }
class subMenu { function subMenu($id,$label,$lien){ $this->id=$id; //id sousmenu $this->label=$lebel; //label $this->lien=$lien; //lien } } ?>
toolbar.php <html> <head> </head> <body> <?php include("classes.php"); $tb=new toolbar(); //création des menus principaux et sous menu: $tb[0]->addMenu("menu1","black","#7E71B4","url_main"); //erreur repérée $tb[0]->addSubMenu("submenu1_1","test"); $tb[0]->addSubMenu("submenu1_2","test"); $tb[0]->addSubMenu("submenu1_3","test"); $tb[0]->addSubMenu("submenu1_4","test");
$tb->addMenu("menu4","blue","#0061B3","tois_com"); $tb[1]->addSubMenu("submenu2_1","test2"); $tb[1]->addSubMenu("submenu2_2","test2");
//....... ?> </body> </html>
une erreur est donc signalée: Fatal error: Cannot use object of type toolbar as array in c:\wamp\www\toolbar.php on line 10
de quoi ça vient et comment faire? en fait je voudrais accéder au premier menu créé (indice 0 dans le tableau) pour lui ajouter un objet de type sousmenu (grace à sa méthode addSubMenu) et ainsi de suite.je vois pas comment y accéder autrement
|
|
mardi 11 janvier 2005 à 23:10:16 |
Re : petites questions de débutant sur les tableaux

johanb
|
l'erreur est à la ligne suivante: $tb[0]->addSubMenu("submenu1_1","test"); le commentaire est placé juste avant, pour pas porter à confusion
ps (à propos du forum): il n'y a pas moyen d'éditer nos messages? parceque quand on se rend compte qu'on a fait une erreur d'écriture, on ne peut rien modefier et on doit mettre un second message pour indiquer l'erreur
|
|
mardi 11 janvier 2005 à 23:20:31 |
Re : petites questions de débutant sur les tableaux

GRenard
|
Non on ne peut pas modifier...
L'erreur est que tu veux accèder à une variable ($tb[0]) qui n'est pas
définie... car $tb[0] signifie que tu regarde dans le tableau $tb, mais
$tb n'est pas définie en tant que tableau... il faudrait faire $tb =
array();
$tb[0] = new ...
(De plus, la surcharge d'opérateur n'existe pas en PHP !) PHP Guru Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles. [ Lien ]
|
|
mardi 11 janvier 2005 à 23:27:58 |
Re : petites questions de débutant sur les tableaux

johanb
|
je pense avoir trouvé. en faisant $tb->toolbar[0]=new... semble marcher (enfin, auune erreur n'est indiquée) ça me fesait bizarre car on m'a toujour appris à conserver les attributs de classe en priver et à ne pas faire d'accès direct. ben tant pis, je ferai comme ça puisque jene vois pas vraiment comment faire autrement encore merci GRenard
|
|
mercredi 12 janvier 2005 à 06:24:38 |
Re : petites questions de débutant sur les tableaux

GRenard
|
bah... tas raison... laisse le privé... mais fait une méthode publique qui permet d'ajouter un new...
et pour l'obtenir , tu fais une méthode publique encore :) tout en laissant ton object privé PHP Guru Écoutez les conseils d'un vieux sage ! Ils sont souvent très utiles. [ Lien ]
|
|
Cette discussion est classée dans : php, tableau, questions, tab, tableaux
Répondre à ce message
Sujets en rapport avec ce message
Tableau avec PHP [ par idrisidev ]
bjr je souhaite prob c qu'il n'enregistre pas le valeur et garde la derniere val ; Voici le script complet mais ou est le probleme l
conversion d'un tab javascript en tab php [ par nacer183 ]
bonjour, j'ai veux convertir un tableau déclaré en javascript en un tableau php et lui afficher ..
tableau avec javascript et PHP [ par alounis ]
Bonjour , Voila mon problème est le suivant: je crée des tableau pour application intranet . j'aimerai savoir comment créer des tableaux sachant que l
cellule tableau php sql [ par jolina87 ]
Bonjour, je veux vos aides s.v.p. je veux afficher les coordonnées d'un étudiant, c.à.d j'ai récupéré le nom et le prénom dans un tableau et j'ai asso
Redimensionnement d'une page php dynamiquement [ par mageek06 ]
Bonjour, j'ai une page php qui contient un tableau. J'aimerais lui définir une taille par défaut de manière à ce que la page ne tienne que sur un pet
tableau php dynamique [ par sly784965 ]
Bonjour, je possède sur une page php un tableau dynamique qui me permet d'insérer dans un fichier texte et d'afficher suivant la sélection dans deux
impossible de ce connecter sur mysql (script php) [ par brani740 ]
Bonjour tout le monde quelqu'un peut me dire pourquoi quand je m'authentifie avec mon script ça ne fonctionne pas merci. voici le code : <?php sess
A propos des tableaux... [ par fra1ft ]
Bonjour à tous. Un petit soucis sur un source... J'ai le lien suivant .../affiche.php?variable1machin=0(ou 1)&variable1truc=0(ou 1)&variable2machin=0(
Récupérer un tableau en PHP avec $_POST [ par captainnord ]
Bonjour à tous ! C'est mon premier message sur ce forum, donc j'espère que vous serez indulgent :) Je suis en train de créer un site Web dans lequel
Probleme plusieurs tableau lié. [ par shilom54 ]
Bonjour a tous, je vais essayer de vous expliquer clairement mon problème : dans mon code j'ai 4 tableaux organisés de la façon suivante : [code=p
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|