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

Как добавить foreach в array( ?

Есть вот такая функция:
return array_merge($reference_model->get_alias(), array(
			'_currency_id' => array( 'method' => 'get_currency_by_id'),
			'type_id' => array( 'method' => 'get_transport_type_by_id'),
			'_region_id' => array( 'method' => 'get_region_by_id'),
			'_drive_id' => array( 'method' => 'get_drive_by_id'),
			'_color_id' => array( 'method' => 'get_color_by_id'),
			'_affiliate_id' => true,
			
			'_vin' => true,
			'_fabrication' => true,
			'_cilindrics' => true,
			'_price' => true,
			'_mileage' => true,
			'_price_negotiable' => true,
			'_version' => true,
			'_seats' => true,
			'_engine_power' => true,
			'_best_offer' => true,
			'_category_id' => true
		));

Но у меня еще есть поля с неизвестными name и неизвестно их количество.
И мне нужно добавить что то вроде
foreach ($_REQUEST as $k => $v) {
              if (strpos($k, '_from_where_') === 0)
			  '$k' => true,
             }
в эту функцию
Как правильно добавить их в эту функцию ?
  • Вопрос задан
  • 2230 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
OlegLazarenko
@OlegLazarenko
Для начала все свои "неизвестные поля" соберем в массив $arr:

foreach ($_REQUEST as $k => $v) {
              if (strpos($k, '_from_where_') === 0)
			  $arr[$k] = $v;
             }


А затем этот массив передадим в параметр array_merge():

return array_merge($reference_model->get_alias(), array(
			'_currency_id' => array( 'method' => 'get_currency_by_id'),
			'type_id' => array( 'method' => 'get_transport_type_by_id'),
			'_region_id' => array( 'method' => 'get_region_by_id'),
			'_drive_id' => array( 'method' => 'get_drive_by_id'),
			'_color_id' => array( 'method' => 'get_color_by_id'),
			'_affiliate_id' => true,
			
			'_vin' => true,
			'_fabrication' => true,
			'_cilindrics' => true,
			'_price' => true,
			'_mileage' => true,
			'_price_negotiable' => true,
			'_version' => true,
			'_seats' => true,
			'_engine_power' => true,
			'_best_offer' => true,
			'_category_id' => true
		),

		$arr,   /* !!!!!!!!!!!!!!!!!!!!! */

);
Ответ написан
Ваш ответ на вопрос

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

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