2011-01-11 10 views
1

nicht sicher, warum ich mit diesemassign Werte Array und refernce sie dann

$page = $_GET['page']; 
$pagename = array(home => My Home, about => About Us, contact => Contact Us); 

echo "You are on the" . $pagename[$page] . "page"; 

die URL

http://www.mywebsite.com/subpage.php?page=contact 

Das Echo sollte sagen würde, ein solches Problem habe „Sie befinden sich auf dem Kontakt sind us-Seite.

+0

werden würde und was es stattdessen sagt? Betrachtet man den Code, würde ich 'PHP Parse error: Syntaxfehler, unerwarteter T_STRING, erwartet ')' ' – Oswald

Antwort

2

Array Definition ist Konstanten statt fo Strings als Schlüssel verwenden. fügen Sie Anführungszeichen Tasten.

array('home' => 'My Home', 'about' => 'About Us', 'contact' => 'Contact Us'); 
+0

darauf erraten, dass Ihre Array-Elemente auch nicht-angeketteten Strings entsprechen. – dqhendricks

+0

im Grunde müssen Sie Strings zitieren, und assoziative Schlüssel sind Strings. – dqhendricks

1

Vielleicht liegt es daran, dass Sie "" in Ihrer Zeichenfolge fehlt?

$pagename = array("home" => "My Home", "about" => "About Us", "contact" => "Contact Us"); 
1

Sie haben Ihr Problem nicht erwähnt. Wenn Sie nur auf Ihren Code schauen, sieht es so aus, als hätten Sie vergessen, Ihre Strings im Array zu zitieren.

$pagename = array(home => My Home, about => About Us, contact => Contact Us); 

$pagename = array('home' => 'My Home', 'about' => 'About Us', 'contact' => 'Contact Us'); 
Verwandte Themen