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

Как в php сделать много однотипных функций?

// список полей в секции контактов
  $contacts_fields = array(
    "site_telephone_2" => "телефон 2",
    "site_email_2"     => "почта 2",
  );

// создание функций
foreach ( $contacts_fields as $field_id => $field_name ) {
  $function_name = "text_callback_function" . $field_id;
  function $function_name() {    // !!!!!!!!!! вот тут ошибка !!!!!!!!!!!
    echo '<input 
		name="' . $field_id . '" 
    id="' . $field_id . '"
		type="text" 
		value="' . esc_attr( get_option( $field_id ) ) . '" 
		class=""
	 />';
  }
}
  • Вопрос задан
  • 85 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Adamos
@Adamos
$contacts_fields = array(
    "site_telephone_2" => ['value' => "телефон 2", 'type' => 'phone'],
    "site_email_2"     => ['value' => "почта 2", 'type' => 'email'],
);

function decorator($name, $value, $type) {
  switch($type) {
   ...
  }
}

Примерно по такой логике можно сделать довольно универсальный класс, который потом позволит программировать любые формы декларативно.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽