[RESOLU] Récupérer la varable de l'index d'un tableau

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Récupérer la varable de l'index d'un tableau

Re: [RESOLU] Récupérer la varable de l'index d'un tableau

par sirakawa » 02 nov. 2013, 15:15

Il n'y a pas eu engueulade, mais remarques, justifiées.
J'ajouterai :
1) il est très rare qu'un de nous fasse ce genre de remaques...
2) J'avais résolu le problème. Bien sûr, pour s'en rendre compte, il fallait lire tout mon message.
3) Bon vent avec la certitude que, pour moi au moins, tes messages ici seront transparents, invisibles si tu préfères. Sauf si tu nous disais que ton ordinateur est en train de t'étrangler; mais à distance, on est un peu démuni.
4) Je regrette d'avoir passé un temps non négligeable à démêler ton cas.

Re: [RESOLU] Récupérer la varable de l'index d'un tableau

par Sebastien » 02 nov. 2013, 14:40

Bon voila, j'ai résolu mon soucis tout seul en passant par un outil yaho qui m'a tout bien converti comme je voulais
J’avoue ne pas y avoir pensé plus tôt, ca m'aurait évité de perdre mon temp (et me faire engueulé ici)

Re: Récupérer la varable de l'index d'un tableau

par AB » 01 nov. 2013, 19:29

...sympa de me prendre pour un idiot... Alors je pose cette question puisque je ne suis qu'un raté de la société et un nul (je ne fais qu abonder dans votre sens)...
A la lecture de ton premier post, on pouvait penser soit à un débutant sur les tableaux (et donc assez débutant en php), soit à quelqu'un qui n'avait pas formulé correctement sa question, d'où mes points d'interrogation. Et comme les questions mal formulées proviennent quasiment toujours de personnes débutantes sur le sujet...

Cela fait plus de dix ans que je fais du php et pourtant pour certains sujets je consulte parfois le site du zero sans me considérer pour autant comme un idiot. C'est presque tous les jours que j'apprends des choses que je ne connaissais pas.
Enfin bon pour dire qu'on a tous été débutant et que l'on débute et re débute encore souvent pour suivre les nouvelles technologies. Et donc suivant ta définition tous les webmestres qui tiennent leur connaissances à jour sont des idiots et des ratés de la société ?
Faudrait peut-être penser à être moins susceptible, ne serait-ce que pour gagner du temps en se concentrant plus rapidement sur le sujet réel, ce qui permet d'apprendre plus vite :wink:

Re: Récupérer la varable de l'index d'un tableau

par Sebastien » 01 nov. 2013, 13:06

Ah bah voilà j'ai compris maintenant. Merci.

Re: Récupérer la varable de l'index d'un tableau

par sirakawa » 01 nov. 2013, 13:02

La valeur entre crochets est bien la clef. On nne peut pas directement manipuler les valeurs des clefs. C'est pour ça qu'il faut se servir de array_keys qui met les clefs dans un tableau indicé numériquement avec cette fois les clefs de ton tableau d'origine comme valeurs.
$o = array ("nom"=>"Titi");
array_keys donne
0 => "nom"

Re: Récupérer la varable de l'index d'un tableau

par Sebastien » 01 nov. 2013, 12:56

Je vois ca ce soir mais je suis pas convaincu. Alors je pose cette question puisque je ne suis qu'un raté de la société et un nul (je ne fais qu abonder dans votre sens) pourquoi cette valeur entre crochet n'esr pas la clef mais la valeur proprement dite ?

Re: Récupérer la varable de l'index d'un tableau

par sirakawa » 01 nov. 2013, 12:45

sympa de me prendre pour un idiot !!!!
Quand on demande des renseignements sur un tableau qui n'est en aucun point conforme aux syntaxes de php, on laisse entendre qu'on n'y connaît pas grand chose.
C'est toi-même qui dis ne pas comprendre grand chose aux tableaux associatifs:
Personnellement, malgré la longue expérience autodidacte PHP (ceci explique cela), je ne comprends pas ce que c'est.
Un tableau associatif ?
De plus, si tu avais testé, tu aurais vu que j'avais fourni une réponse à ta question.

Re: Récupérer la varable de l'index d'un tableau

par Sebastien » 01 nov. 2013, 12:41

ce qui me derance,c'est que d'apres ce que je vois, la clef c'est [ORGANIZER;CN=Popol]
et je sais pertinemment ((d'apres le contexte) que popol ne fait pas partie de la clef mais EST la valeur !

Re: Récupérer la varable de l'index d'un tableau

par Sebastien » 01 nov. 2013, 12:37

Le probleme ce n'est pas le tableau en soit, ca je sais encore gérer !
Le probleme c'est que ce tableau est issu d'une fonction qui converti in fichier ical en tableau. ET c'est cette conversion qui, à mon avis, ne se fait pas correctement. Sinon, je sais encore aller chercher le contenu d'un tableau indexé !!

Re: Récupérer la varable de l'index d'un tableau

par Sebastien » 01 nov. 2013, 12:35

sympa de me prendre pour un idiot !!!!

Re: Récupérer la varable de l'index d'un tableau

par sirakawa » 01 nov. 2013, 12:19

Un peu bavard mais comme tu sembles ne pas en savoir lourd sur les tableaux:
<?PHP
$tableau_indice = array
(
	0 => "valeur chaine",
	1  => 1024,
	1515 => "Marignan",
);
$tableau_associatif = array
(
	"nom" => "La Crapule",
	"date_naissance" => "21/05/1298",
	"salaire" => 2354,
	
);

$tableau_sans_clef = array
(
	"Toto",
 	"La mouche",
 	2541,
 );
 print "<h2>Consultation par élément</h2>";
print "<h3>Clefs numériques </h3>";
print_r($tableau_indice);
print" <h4>Consultation élément par élément</h4>";
print "<br />\$valeur = \$tableau_indice[1515]:<br>";
$valeur = $tableau_indice[1515];
print "$valeur";

print "<h3>Clefs chaînes (on a vu associatif) </h3>";
print_r($tableau_associatif);
print" <>Consultation élément par élément</h4>";
print "<br/>\$valeur = \$tableau_associatif['nom']:<br>";
$valeur = $tableau_associatif['nom'];
print "$valeur";

print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
print_r($tableau_sans_clef);
print" <>Consultation élément par élément</h4>";
print "<br/>\$valeur = \$tableau_sans_clef[1]:<br>";
$valeur = $tableau_sans_clef[1];
print "$valeur";

print "<h2>Consultation de l'ensemble</h2>";
print "<h3>Clefs numériques </h3>";
foreach ($tableau_indice as $ligne)
{
	print "<br />ligne courante :";	
	print_r($ligne);
};
print "<h3>Clefs chaînes (on a vu associatif) </h3>";
foreach ($tableau_associatif as $ligne)
{
	print "<br />ligne courante :";	
	print_r($ligne);
};

print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
foreach ($tableau_sans_clef as $ligne)
{
	print "<br />ligne courante<br />";	
	print_r($ligne);
};

print "<h2>Mise à jour</h2>";
print "<h3>Ajout en fin</h3>";
print "<h3>Clefs numériques </h3>";
$tableau_indice[] = "ajout en fin";
print_r($tableau_indice);
print "<h3>Clefs chaînes (on a vu associatif) </h3>";
$tableau_associatif[] = "ajout en fin";
print_r($tableau_associatif);
print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
$tableau_sans_clef[] = "ajout en fin";
print_r($tableau_sans_clef);


print "<h3>Ajout à un endroit précis</h3>";
print "<h3>Clefs numériques </h3>";
$tableau_indice[312] = "ajout en cellule 312";
print_r($tableau_indice);
print "<h3>Clefs chaînes (on a vu associatif) </h3>";
$tableau_associatif['surnom'] = "LE Boucher de Béthune";
print_r($tableau_associatif);
print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
$tableau_sans_clef[1024] = "ajout en 1024";
print_r($tableau_sans_clef);

print "<h3>Changement de valeur</h3>";
print "<h3>Clefs numériques </h3>";
$tableau_indice[1515] = "La bataille de Marignan";
print_r($tableau_indice);
print "<h3>Clefs chaînes (on a vu associatif) </h3>";
$tableau_associatif['nom'] = "Le Crapaud";
print_r($tableau_associatif);
print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
$tableau_sans_clef[1] = "La Mouche qui grimpe";
print_r($tableau_sans_clef);

print "<h3>Suppression de valeur</h3>";
print "<h3>Clefs numériques </h3>";
$tableau_indice[1515] = "";
print_r($tableau_indice);
print "<h3>Clefs chaînes (on a vu associatif) </h3>";
$tableau_associatif['nom'] = "Le Crapaud";
print_r($tableau_associatif);
print "<h3>Sans clefs se comporte comme s'il avait des clefs numériques</h3>";
$tableau_sans_clef[1] = "La Mouche qui grimpe";
print_r($tableau_sans_clef);


$t = Array
(
	 0 => Array
	 (
		 "DTSTAMP" => "20131028T115748Z",
		 "LAST-MODIFIED" => "20131028T115748Z",
		 "CREATED" => "20131007T135158Z",
		 "SEQUENCE" => "1807550",
		"ORGANIZER;CN=Popol" => "MAILTO:[email protected]",
		 "DTSTART" => "20131107T193000Z",
		 "DTEND" => "20131107T223000Z",
		 "UID" => "[email protected]",
		 "SUMMARY" => "Tartampion en concert",
		 "LOCATION" => "MJC fantastique",
		 "URL" => "...........",
		 "DESCRIPTION" =>" De retour pour la première fois ensemble !!!!!!!\n\nChanson française\nJeudi 7 novembre à 20h40\n\nSimon",
		 "blabla" => "nouveaux Spectacle &laquo;Le charlot&raquo;\n+ Julien formule à 4 \n \n\nhttp => //www.boubook.com/events/1111111111111/",
		 "CLASS" => "PUBLIC",
		 "STATUS" => "CONFIRMED",
		 "PARTSTAT" => "NEEDS-ACTION",
 	),
 
 );
 print "<h2>Le tableau à traiter</h2>";
 print_r($t);
 $ligne = $t[0];
 $l = array_keys($ligne);
 
 print "<hr>On extrait la ligne voulue:";
print_r($ligne);
 print "<hr>On extrait  les clefs de la ligne voulue:";
print_r($l);
 print "<hr>On extrait  la clef souhaitée de la ligne voulue:";
 $clef = $l[4];
 print "<p>on est presque au bout : $clef";
 print "<p>Où est = ? : ";
 $pos = strpos($clef, "=");
 print "$pos";
 $valeur_cherchee = substr($clef, $pos+1);
  print "<p>Enfin: $valeur_cherchee";

 

 ?>

Re: Récupérer la varable de l'index d'un tableau

par AB » 01 nov. 2013, 05:41

Qu'est-ce qui te dérange ? tu ne connais pas les fonctions permettant d'avoir accès aux clés d'un tableau ? Déjà rien qu'en faisant une boucle avec la syntaxe basique foreach($tab as $key => $values) tu peux faire une recherche sur le contenu des clés. Avec un tableau à deux dimensions cela te fais une boucle de plus.
Après il y a des fonctions plus évoluées comme http://www.php.net/manual/fr/class.recu ... erator.php ce qui peut donner :
<?php
$fruits = array("a" => "lemon", "b" => "orange", array("c" => "apple", array("d" => "apple", "e" => "pear",array("f" => "apple", "g" => "pear")),array("h" => "apple")));

$iterator = new RecursiveIteratorIterator(new RecursiveArrayIterator($fruits));

while ($iterator->valid()) {
   
        echo $iterator->key(); 

    $iterator->next();
}
// resultat : aabcdefgh 
?>

Récupérer la varable de l'index d'un tableau

par Sebastien » 31 oct. 2013, 23:53

Bonjour à tous,

Je sèche là dessus depuis quelques temps, je ne sais pas faire, je ne trouve pas !
Soit un tableau tel que :
Array
(
[0] => Array
(
[DTSTAMP] => 20131028T115748Z
[LAST-MODIFIED] => 20131028T115748Z
[CREATED] => 20131007T135158Z
[SEQUENCE] => 1807550
[ORGANIZER;CN=Popol] => MAILTO:[email protected]
[DTSTART] => 20131107T193000Z
[DTEND] => 20131107T223000Z
[UID] => [email protected]
[SUMMARY] => Tartampion en concert
[LOCATION] => MJC fantastique
[URL] => ...........
[DESCRIPTION] => De retour pour la première fois ensemble !!!!!!!\n\nChanson française\nJeudi 7 novembre à 20h30\n\nSimon
[blabla ] => nouveaux Spectacle "Le charlot"\n+ Julien formule à 4 \n+
[\n\nhttp] => //www.boubook.com/events/1111111111111/
[CLASS] => PUBLIC
[STATUS] => CONFIRMED
[PARTSTAT] => NEEDS-ACTION
)
(ce code a été anonymisé)

Vous pouvez voir sur la ligne en couleur CN=Popol
Personnellement, malgré la longue expérience autodidacte PHP (ceci explique cela), je ne comprends pas ce que c'est.
Un tableau associatif ?
Enfin là n'est pas le problème. Je cherche, à partir de ce tableau, à en extraire la chaine de caractère entre CN= et ] (ici POPOL en l'occurence)

Quelqu'un saurait il m'aider là dessus ? Merci d'avance