Page 1 sur 1

récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 16:53
par polpaulin
Bonjour

J'essaye de récupérer les valeurs d'un array par cle ou index

Code : Tout sélectionner

$user = array(); $user['a'] = 'firstname'; $user['b'] = 'lastname'; echo '<br />user = ' . $user[0]; echo '<br />user = ' . $user['a'];
Je ne recupere rien avec $user[0]

comment puis je avoir ces valeur pas leur index (sans for each ou loop) ?

merci

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 17:00
par Megadeth
Salut,

Jette un oeil à cela :
<?php 
$user = array();
$user[] = 'firstname';
var_dump($user);  
print '<pre>'; print_r ($user); print '</pre>';
echo '<h1>'.$user[0].'</h1>';
?>
Mega
;)

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 17:03
par polpaulin
merci mais là tu n'utilises pas $user['a'] = 'firstname';

il me faut la cle 'a' je veux pouvoir récupérer par cle et index comme en C#

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 17:53
par sirakawa
Un coup d'oeil ici:
forum.phpfrance.com/posting.php?mode=reply&f=8&t=267865
serait utile en particulier:
La clé key peut être soit un integer, soit une chaîne de caractères. La valeur value peut être de n'importe quel type.

De plus, les modifications de type pour la clé key peuvent survenir :

Les chaînes de caractères contenant un entier valide seront modifiées en un type entier. I.e. la clé "8" sera actuellement stockée comme l'entier 8. D'un autre côté, "08" se sera pas modifié, sachant que ce n'est pas un entier décimal valide.
Les nombres à virgule flottante seront aussi modifiés en entier, ce qui signifie que la partie après la virgule sera tronquée. I.e. la clé 8.7 sera stockée sous l'entier 8.
Les booléens seront modifiés en entier également, i.e. la clé true sera stockée sous l'entier 1 et la clé false sous l'entier 0.
La valeur Null sera modifiée en une chaîne vide, i.e. la clé null sera stockée sous la chaîne de caractère "".
Les tableaux et les objets ne peuvent pas être utilisés comme clé. Si vous le tentez, l'alerte suivante sera émise : Illegal offset type.

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 22:24
par polpaulin
merci mais ce n'est pas ma question

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 22:28
par moogli
cela répond à ta question La clé key peut être soit un integer, soit une chaîne de caractères.

une clef est unique et dans ce cas tu ne peux accéder qu'a $user['a'] de cette façon. $user[0] c'est un autre index.


@+

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 22:55
par polpaulin
non ce n'est pas ma question mais laisse tomber c'est pas grave

Re: récupérer les valeur d'1 array key ou par index

Posté : 25 avr. 2013, 23:05
par moogli
Je ne recupere rien avec $user[0]

comment puis je avoir ces valeur pas leur index (sans for each ou loop) ?

merci
la réponse à ta question c'est l'index et numérique OU alpha numérique....

Re: récupérer les valeur d'1 array key ou par index

Posté : 26 avr. 2013, 08:09
par sirakawa
@moogli:
on doit être tous les deux producteurs et consommateurs d'émeri....

Re: récupérer les valeur d'1 array key ou par index

Posté : 26 avr. 2013, 09:05
par Mazarini
Sans doute une confusion à cause de mysql qui retourne (par défaut) les 2 clés.

Re: récupérer les valeur d'1 array key ou par index

Posté : 26 avr. 2013, 12:29
par polpaulin
$user = array();
$user['a'] = 'firstname';
$user['b'] = 'lastname';

pour avoir 'firstname'
je fais echo $user['a'];
mais je veux pouvoir faire echo $user[0]; qui est sa position 0 dans le array (que j'appelle index)

pour avoir ''lastname'
je fais echo $user['b'];
mais je veux pouvoir faire echo $user[1]; qui est sa position 1 dans le array

C'est possible dans d'autres langages de programmation mais apparemment pas en php

Re: récupérer les valeur d'1 array key ou par index

Posté : 26 avr. 2013, 12:36
par polpaulin
j'ai trouve la solution

$user = array('a' => 'firstname', 'b' => 'lastname');
$indexes = array_keys($user);
echo $user[$indexes[0]];