2010-05-27 6 views
1

Tous,Trait d'union dans les clés de matrice

J'ai un tableau avec des tirets dans le nom de la clé. Comment puis-je en extraire la valeur en PHP? Il retourne un 0 à moi, si j'accès comme ceci:

print $testarray->test-key; 

Voici comment le tableau ressemble

testarray[] = {["test-key"]=2,["hotlink"]=1} 

Merci

+0

Le '- opérateur>' est pas destiné à accéder à des éléments de réseau; il est destiné à l'accès aux membres d'objets. – BoltClock

Répondre

7

Vous avez des problèmes:

testarray[] = {["test-key"]=2,["hotlink"]=1} 
    1      2 
  1. Il vous manque $ utilisés pour créer des variables en php
  2. Il est pas un format de tableau valide

.

print $testarray->test-key; 
       1 
  1. L'opérateur => est utilisé pour les objets, pas des tableaux, utilisez [] à la place.

Voici comment votre code devrait ressembler à:

$testarray = array("test-key" => 2, "hotlink" => 1); 
print $testarray['test-key']; 

Enfin,

See PHP Array Manual

+0

Que faire si je veux y accéder en tant qu'objet? – Jake

+0

Vous ne pouvez pas accéder à un tableau en tant qu'objet –

+0

@Vincent: Pourquoi voulez-vous le lire en tant qu'objet en premier lieu, il n'est pas nécessaire de convertir le tableau en objet comme indiqué ici: http: // www.lost-code-producro.com/programmation/phpcode/php-array-to-object/ –

Questions connexes