Помогите с регуляркой

программирование php регулярные выражения

$text = "{%custom m_catalog->create_all('asd','asda') %}";
preg_match_all("/{%custom (.*)\-\>(.*)\('(.*)'\) %}/", $text, $sovpad);
foreach ($sovpad as $key => $value)
{
print_r ($sovpad[$key]);
echo "<BR>";

}

надо чтоб я мог получить отдельно в переменных m_catalog, create_all и все переменные функции что в кавычках стоят одинарных или двойных отдельно каждую asd 'asda чтобы можно было функцию вызвать
только переменных у вызываемой функции может быть сколь угодно и названия m_catalog и create_all тоже могут быть другими та регулярка что писал выше выдает мне класс и имя функции а вот переменные берет от начала кавычки и до конца то есть не получаю отдельно каждую переменные заключенную в кавычке кто может помогите плз не как не получается

Примечание:
не хотел бы таким способом идти

Примечание:
эт вовсе не JS регулярка

Примечание:
Если можете просто помогите дописать пожалуйста
Ответы:
Выбери все php выражение и сделай eval.
Ты уже пошел не тем способом. Хранить php в строках и парсить регуляркой js выражение что бы вызвать не лучшая идея.
Опечатался, не js а php
Ладно. Только для тебя. Убил 40 минут, но давно хотел понять как эта хрень работает.
Разберешься как это работает, респект :)


12 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.