ClaytonDaniels
ClaytonDaniels

Reputation: 523

Printing Our Array Data

In PHP, Codeigniter: my array, $phoneList, contains the following:

Array
(
    [name] => One, Are
    [telephonenumber] => 555.222.1111
)

Array
(
    [name] => Two, Are
    [telephonenumber] => 555.222.2222
)

Array
(
    [name] => Three, Are
    [telephonenumber] => 555.222.3333
)

How do I list each name out? Each number out? Am I right in saying my array contains three different Arrays? And is that normal, for an array to contain arrays?

When I do a print_r($phoneList), I get the following:

Array ( [0] => Array ( [name] => One, Are [telephonenumber] => 555.222.1111 ) [1] => Array ( [name] => Two, Are [telephonenumber] => 555.222.2222 ) [2] => Array ( [name] => Three, Are [telephonenumber] => 555.222.3333 ) )

Upvotes: 0

Views: 65

Answers (3)

Soz
Soz

Reputation: 963

It's completely normal to have an array of arrays (in this case an array of associative arrays). They can be written like so:

$arrayofarray = array(array('name' => 'aname', 'phone'=>'22233344444'), array('name' => 'bobble', 'phone'=>'5552223333'));
print_r($arrayofarray);

and you should be able to print out the content in this way:

foreach ($arrayofarray as $arr){
    print $arr['name']."\n";
    print $arr['phone']."\n";
}

If you want to know what terms are set in each associative array you can use array_keys() to return them (as a simple array). For example:

foreach ($arrayofarray as $arr){
    $setterms=array_keys($arr);
    foreach ($setterms as $aterm){
            print "$aterm -> ".$arr[$aterm]."\n";
    }
}

Upvotes: 1

Andrius Naruševičius
Andrius Naruševičius

Reputation: 8578

Here is the solution. Foreach is the easiest approach.

Upvotes: 1

Niet the Dark Absol
Niet the Dark Absol

Reputation: 324620

You'll probably want to use foreach to loop through them. Something like this:

foreach($data as $arr) { // assuming $data is the variable that has all this in
    echo $arr['name'].": ".$arr['telephonenumber']."<br />";
}

Upvotes: 2

Related Questions