Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

PHP PHP Arrays and Control Structures PHP Arrays Multidimensional Arrays

I'm stuck in this challenge!

In the code below, we have a simple array of contact names. We want to use the $contacts array to fill in the hardcoded list of names an email addresses. To hold the email as well as the name for each contact, we need a multidimensional array, meaning each person in the contact list will have their own array. The first step is to make each person their own single item ASSOCIATIVE array, using 'name' as the key for these internal arrays.

index.php
<?php
//edit this array
$contacts = array('Alena Holligan', 'Dave McFarland', 'Treasure Porth', 'Andrew Chalkley');
$contacts = array(
  array('name' => 'Alena Holligan', 'email' => 'alena.holligan@teamtreehouse.com'),
  array('name' => 'Dave McFarland', 'email' => 'dave.mcfarland@teamtreehouse.com'),
  array('name' => 'Treasure Porth', 'email' => 'treasure.porth@teamtreehouse.com'),
  array('name' => 'Andrew Chalkley', 'email' => 'andrew.chalkley@teamtreehouse.com'),
);
echo "<ul>\n";
//$contacts[0] will return 'Alena Holligan' in our simple array of names.
echo "<li>", $contacts[0]['name'], " : ", $contacts[0]['email'], "</li>\n";
echo "<li>", $contacts[1]['name'], " : ", $contacts[1]['email'], "</li>\n";
echo "<li>", $contacts[2]['name'], " : ", $contacts[2]['email'], "</li>\n";
echo "<li>", $contacts[3]['name'], " : ", $contacts[3]['email'], "</li>\n";
echo "</ul>\n";

4 Answers

Try using periods instead of commas to separate the values. :)

<?php
//edit this array
$contacts = array('Alena Holligan', 'Dave McFarland', 'Treasure Porth', 'Andrew Chalkley');
$contacts = array(
  array('name' => 'Alena Holligan', 'email' => 'alena.holligan@teamtreehouse.com'),
  array('name' => 'Dave McFarland', 'email' => 'dave.mcfarland@teamtreehouse.com'),
  array('name' => 'Treasure Porth', 'email' => 'treasure.porth@teamtreehouse.com'),
  array('name' => 'Andrew Chalkley', 'email' => 'andrew.chalkley@teamtreehouse.com'),
);
echo "<ul>\n";
//$contacts[0] will return 'Alena Holligan' in our simple array of names.
echo "<li>" . $contacts[0]['name'], " : " . $contacts[0]['email'] . "</li>";
echo "<li>" . $contacts[1]['name'], " : " . $contacts[1]['email'] . "</li>";
echo "<li>" . $contacts[2]['name'], " : " . $contacts[2]['email'] . "</li>";
echo "<li>" . $contacts[3]['name'], " : " . $contacts[3]['email'] . "</li>";
echo "</ul>\n";

php>

Good luck! ~alex

This helped for Task 1. I omitted the first line and it still worked. Thank you

Thanks for helping but still doesnโ€™t work, It gives me this error

Bummer! I do not see the required output. You should not be modifying the output at this point.

I'm really confused!

Need help please

sir i am stuck too

Christof Beck
Christof Beck
5,185 Points

Alex is right, but you should use all dots. There's still one comma after 'name']. In PHP, you use dots to concatenate strings. Edit: Echo can take more than one argument using commas, so I think using commas is also valid PHP code. It seems that in PHP there are often a couple of different ways to do something and the code challenge on treehouse doesn't always recognize all of them. As long as you stick to what was shown in the video, you should be fine.