PHP Получить значения массива из цикла foreach и передать отдельные значения в функцию - PullRequest
0 голосов
/ 04 октября 2019

У меня есть функция, которая содержит цикл foreach, который проходит через массив и возвращает каждое значение, используя $ row ['COLORS']. Цель состоит в том, чтобы передать значение в вызываемую функцию. Здесь моя проблема. Я не могу использовать «возврат» для передачи значения. Из-за цикла foreach я не могу использовать возврат для поддержания цикла. Приведенный ниже код работает только для 1 записи.

function __construct() {
   parent::__construct();

   $this->myColors = $this->getColors();
}  

public function getColors() {
   sql = $this->buildSQL();
   $query = $this->db->query($sql)->result_array();

   foreach ($query as $row) {
     $theColor = $row['COLOR'];
     return $theColor;
  }
}

Мне нужно сделать то же самое для каждого из цветов в массиве, а не только для одного значения. Я пытался передать значение в другую функцию с возвратом, но оно не возвращается туда, где оно мне нужно в __construct.

...
foreach ($query as $row) {
   $theColor = $row['COLOR'];
   $this->returnColor($passColor);
}
public function returnColor($passColor) {
    return $passColor;
}

Я также пробовал функцию с оператором switch (который не является жизнеспособнымрешение из-за сотен значений) но опять же возврат не работает в этой ситуации. Буду очень признателен за любую помощь.

...