Есть данные в виде string: HTML: <div class="download rad-3 pad-20 mbt-48"> <p><a href="wp-content/uploads/2018/06/road.jpg">Учебник</a></p> <p><a href="wp-content/uploads/2018/06/road.png">1000 слов</a></p> </div> Нужно получить расширение ссылки и присвоить ссылке соответствующий класс. Должно выглядеть так: HTML: <div class="download rad-3 pad-20 mbt-48"> <p><a class="jpg" href="wp-content/uploads/2018/06/road.jpg">Учебник</a></p> <p><a class="png" href="wp-content/uploads/2018/06/road.png">1000 слов</a></p> </div> Прошу помощи.
Берите расширение и, если оно есть в предопределенном списке классов, добавляйте соотв. класс. В чем конкретно проблема?
@Yankovitz, задачка в том, чтобы в имеющемся файле исходный код поправить, или налету при формировании страницы внести изменения, или уже у клиента в браузере, посредством js после загрузки страницы?
Не, ТС опытный. Должен знать, что для этого есть «Сделайте за меня» и «Фриланс» --- Добавлено --- Хотя «авось прокатит на халяву» никто не отменял
Я не прошу за меня написать код. Я лишь прошу направления. Что лучше использовать: регулярки или есть лучшая альтернатива?
@Yankovitz, ты запостил html и говоришь, что надо php на лету. Яснопонятно, что ты даже рядом не отдупляешься.
Я вообще то новичек в PHP, но если я тебя правильно понял, то я написал что-то типа такого PHP: $data = '<div class="download rad-3 pad-20 mbt-48"> <p><a href="wp-content/uploads/2018/06/road.jpg">Учебник</a></p> <p><a href="wp-content/uploads/2018/06/road.png">1000 слов</a></p> </div>'; $data = explode("\n", $data); foreach ($data as $k => $v) { $extension = explode('.', $data[$k]); if (isset($extension[1])) { $extension = substr($extension[1], 0, strpos($extension[1], '"')); $data[$k] = str_replace("<a", "<a class=\"{$extension}\"", $data[$k]); } } $data = implode("\n", $data);
@Astar75, вы конечно молодец, но то что вы сделали это называется "костыль". Судя по всему у ТС сайт на вордпресс и надо, что-то вроде вот этого http://www.internet-technologies.ru...identifikatorami-generiruemymi-wordpress.html
я новичек в php, да и с вордпрессом не работал на уровне написания кода. То что я написал выше -- есть костыль, и это можно было бы сделать более лаконично с помощью регулярных выражений, но я не имею опыта