Зачеркнуть название класса на сайте, используя php - PullRequest
1 голос
/ 15 февраля 2020

Итак, я хочу удалить имя класса с веб-сайта. Вот источник html кода:

<td title="Complexity" class="cvss6" itemscope itemtype="http://schema.org/Rating">

Я хочу удалить только " cvss6 ", пробовал с этим:

$nilai1 = explode('<td title="Complexity" class="', $kodeHTML);
$nilai_show2 = explode('" itemscope="', $nilai1[1]);echo "

<tr><td width='85%' align='left' bgcolor='#F5F5F5'>".$judul_show[0]."</td>";

if($nilai_show2[0] == 'cvss6') {
echo "<td width='15%' align='center' bgcolor='#FF0000'>High</td></tr>";

                    }

но это не так не работает, просто ничего не покажет на моем сайте. Мне удалось отменить это html простой текст. Но как вы удалите текст, который находится внутри имени класса? Спасибо

1 Ответ

1 голос
/ 15 февраля 2020

Чтобы ответить на ваш вопрос, вы можете использовать регулярное выражение, чтобы найти то, что вам нужно, с помощью приведенного ниже кода мы попытаемся найти термин, который ожидает class = "нечто" с многострочным флагом (https://www.php.net/manual/fr/function.preg-match-all.php):

preg_match_all(
    '/class="(.+?)"/m',
    '<b>exemple : </b><div class="test test1 test2 test3" align=left>This is a test</div class="t1 t2">',
    $out
);

var_dump($out[1]);

/* output
  array(2) {
    [0]=>
    string(22) "test test1 test2 test3"
    [1]=>
    string(5) "t1 t2"
  }
*/

Также я советую вам использовать библиотеку для сканирования веб-страницы с php.

https://symfony.com/doc/current/components/dom_crawler.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...