У меня есть функция, которая содержит цикл 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 (который не является жизнеспособнымрешение из-за сотен значений) но опять же возврат не работает в этой ситуации. Буду очень признателен за любую помощь.