За последние 24 часа нас посетили 22530 программистов и 1112 роботов. Сейчас ищут 607 программистов ...

Преобразование строки/массива в условное выражение

Тема в разделе "PHP для профи", создана пользователем Timur Svoboda, 19 дек 2018.

  1. Timur Svoboda

    Timur Svoboda Новичок

    С нами с:
    19 дек 2018
    Сообщения:
    1
    Симпатии:
    0
    Здравствуйте.
    Столкнулся с одной проблемой. Задача:
    Есть строка вида '(is_front_page && is_home) || is_404', нужно выполнять код, если это выражение верно. is_front_page, is_home, is_404 - название функций, которые возвращают true/false, в зависимости от страницы, на которой вы находитесь. Строка является элементом массива, в зависимости от значения этой строки определённые элементы массива будут обрабатываться или нет. Например:
    PHP:
    1. ...
    2. 'home_props' => array(
    3.     'type'      => 'condition',
    4.     'conditions' => 'is_front_page',
    5.     'props'     => array(
    6.         'font-size' => '50px',
    7.     ),
    8. ),
    9. ...
    То есть массив по ключу 'props' будет обрабатываться функцией, если выражение по ключу 'condition' будет верно.

    Вместо строки может быть массив вида array( '(', 'is_front_page', '&&', 'is_home', ')', '||', 'is_404' );
    Заранее спасибо.

    P.S.
    Можете предлагать альтернативные варианты решения проблемы.