Задать вопрос
@fa70000077

Как получить доступ к ключам многомерного массива?

Здравсвуйте. Пытаюсь реализовать вывод данных из массива, значение которых является переменными. Не знаю как правильно расписать, поэтому покажу на примере.

// Значение переменных
$audi     = true;
$bmw      = false;
$mercedes = true;
$toyota   = true;

// Массив с данными
$arr = [
	'audi'     => [
		'<svg>...</svg>', // Иконка
		$audi,            // True/false
		'Audi'            // Название
	],
	'bmw'      => [
		'<svg>...</svg>', // Иконка
		$bmw,             // True/false
		'BMW'             // Название
	],
	'mercedes' => [
		'<svg>...</svg>', // Иконка
		$mercedes,        // True/false
		'Mercedes'        // Название
	],
	'toyota' => [
		'<svg>...</svg>', // Иконка
		$toyota,          // True/false
		'Toyota'          // Название
	],
];

// Перебор массива
foreach( $arr as $key ) {

	return 'Как правильно сделать проверку на существующее значение из базы вывести данные?';

}


Хочу добиться вывода:
<svg>...</svg> Audi
<svg>...</svg> Mercedes
<svg>...</svg> Toyota
  • Вопрос задан
  • 95 просмотров
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 2
0xD34F
@0xD34F
echo implode("\n", array_map(fn($n) => "$n[0] $n[2]", array_filter($arr, fn($n) => $n[1])));
Ответ написан
rozhnev
@rozhnev Куратор тега PHP
Fullstack programmer, DBA, медленно, дорого
Элементрно:
foreach( $arr as $key=>$value ) {
	if ($value[1]) {
		printf("%s %s\n", $value[0], $value[2]);  
	}
}


Share PHP code

или так:

// Перебор массива
foreach( $arr as $key=>$value ) {
	if ($$key) {
		printf("%s %s\n", $value[0], ucfirst($key));  
	}
}


Run PHP online
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы