array_values ​​() не отображает правильные значения - PullRequest
0 голосов
/ 15 октября 2018

Это мой массив:

array (size=12)
  0 => 
    array (size=2)
      'mon' => string '2018-01-01 00:00:00' (length=19)
      'nb_argus' => string '29' (length=2)
  1 => 
    array (size=2)
      'mon' => string '2018-02-01 00:00:00' (length=19)
      'nb_argus' => string '21' (length=2)
  2 => 
    array (size=2)
      'mon' => string '2018-03-01 00:00:00' (length=19)
      'nb_argus' => string '34' (length=2)
  3 => 
    array (size=2)
      'mon' => string '2018-04-01 00:00:00' (length=19)
      'nb_argus' => string '18' (length=2)
  4 => 
    array (size=2)
      'mon' => string '2018-05-01 00:00:00' (length=19)
      'nb_argus' => string '25' (length=2)
  5 => 
    array (size=2)
      'mon' => string '2018-06-01 00:00:00' (length=19)
      'nb_argus' => string '17' (length=2)
  6 => 
    array (size=2)
      'mon' => string '2018-07-01 00:00:00' (length=19)
      'nb_argus' => string '23' (length=2)
  7 => 
    array (size=2)
      'mon' => string '2018-08-01 00:00:00' (length=19)
      'nb_argus' => string '8' (length=1)
  8 => 
    array (size=2)
      'mon' => string '2018-09-01 00:00:00' (length=19)
      'nb_argus' => string '14' (length=2)
  9 => 
    array (size=2)
      'mon' => string '2018-10-01 00:00:00' (length=19)
      'nb_argus' => string '0' (length=1)
  10 => 
    array (size=2)
      'mon' => string '2018-11-01 00:00:00' (length=19)
      'nb_argus' => string '0' (length=1)
  11 => 
    array (size=2)
      'mon' => string '2018-12-01 00:00:00' (length=19)
      'nb_argus' => string '0' (length=1)

Я просто пытаюсь отобразить каждое из значений 'nb_argus' в цикле foreach, но не могу использовать STRING для указания, мне нужноиспользуйте индекс, это мой код:

foreach ($array_12_months  as $key => $tab) {

        foreach($tab as $row2 => $tab2){

            $tab2 = array_values($tab2);
            echo $tab2[1] . " my complete nb_argus value <br/>";
        }
    }

Он не работает, и вместо отображения 29, например, он отображает 2!

вместо отображения 21, он отображает только один символ: 2

Я действительно не могу найти никакого решения, перепробовал много вещей, я не могу получить доступ к своим значениям nb_argus, хотя я использую array_values ​​(), он не работает, пожалуйста, помогите

Это потому, что nb_argus - это строка, которую он не работает?Я не могу найти решение.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Если вам действительно нужен доступ к индексу по номеру, вместо использования клавиши nb_argus, вы можете использовать:

foreach($array as $item) {
    $values = array_values($item);
    echo $values[1] . " my complete nb_argus value <br/>";
}
0 голосов
/ 15 октября 2018

Используйте array_column и извлеките только 'nb_argus' в плоский массив и отобразите их.

$nb_argus = array_column($arr, 'nb_argus');
foreach($nb_argus as $nb){
    echo $nb . " ";
}

Или вы можете взорвать массив и повторить их как:

$nb_argus = array_column($arr, 'nb_argus');
echo implode(" ", $nb_argus);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...