- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Строка: "текст %1% текст %3% текст %25% текст"
Как найти %номер%, вставить этот номер в переменную и заменить найденное на значение переменной?
Что-бы получилось так:
Сколько таких номеров, сколько в них цифр и есть ли они в строке вообще, заранее неизвестно.
Вы уже пытались написать какой-то код для решения этой задачи?
Или хотите, чтобы написали за вас? :)
Речь об этом? http://www.php.su/sprintf
colorito, нет наверное. %1% это значение объекта JSON c именем "title_1". $cart['title_1'] выводит это значение. Нужно как-то указать что вместо %1% нужно вывести $cart['title_1'].
preg_replace_callback
preg_replace_callback
Можно и обычным preg_replace + eval
<?php
$cart['title_1'] = 'первый текст';
$cart['title_3'] = 'второй текст';
$cart['title_25'] = 'третий текст';
$string = "текст %1% текст %3% текст %25% текст";
$replaced_text = preg_replace("#%(\d+)%#Usi","' . \$cart['title_$1'] . '",$string);
eval( "echo '$replaced_text';");
?>