Marc Heidemann
Marc Heidemann

Reputation: 1084

php: how to get keys of values in array in array

my full function

 function jsonData(){
            //$data = $this->DataSet->query("SELECT * FROM data_sets;");
            $data = $this->DataSet->find('all', array(
            'fields' => array('created','systolisch', 'diastolisch', 'gewicht', 'puls'),
    ));
             $columns = array();
             $values = array();

             $count = count($data);

            for($i=0; $i < $count; $i++)
               {
               $keys[] = array_values($data[$i]);
               $values [] = array_values(array_keys($data[$i]));
               }



            $array = array(
               $keys,
               $values,

                );

            return new CakeResponse(array('body' => json_encode($array), 'type' => 'json'));
    }

here is the situation:

for($i=0; $i < $count; $i++)
               {
               $keys[] = array_values($data[$i]);
               $values [] = array_values(array_keys($data[$i]));
               }

this returns:

[[[{"created":"2013-10-29 14:16:38","systolisch":"77","diastolisch":"83","gewicht":"77","puls":"77"}],[{"created":"2013-10-29 14:52:00","systolisch":"99","diastolisch":"88","gewicht":"80","puls":"100"}]],[["DataSet"],["DataSet"]]]

what i need is the keys of the results of array_values(array(keys) lile diastolisch and systolisch. the values should also be rendered as plain values and not pairs. how can i achieve this?

Upvotes: 0

Views: 131

Answers (1)

Mika
Mika

Reputation: 5845

You can use array_keys. This is from the php documentation:

<?php
$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));

$array = array("blue", "red", "green", "blue", "blue");
print_r(array_keys($array, "blue"));

$array = array("color" => array("blue", "red", "green"),
           "size"  => array("small", "medium", "large"));
print_r(array_keys($array));
?>

This will output:

Array
(
[0] => 0
[1] => color
)

Array
(
[0] => 0
[1] => 3
[2] => 4
)
Array 
(
[0] => color
[1] => size
)

Upvotes: 1

Related Questions