Оглавление

В процессе работы мне потребовалось получить как сам атрибут alt="", так и его значение, чтобы потом провести с ним определенные действия. Я написал небольшой сниппет/функцию, которая решила мою задачу:

Получаем alt и его значение

<?php

/**
 * @return string
 */

function getAlt()
{

    $img = '<img src="screenshot.jpg" alt="Пример">';

    // Get alt and alt values
    preg_match('~alt="(.*?)"~u', $img, $alts);
    return (!empty(trim($alts[1]))) ? 'Значение alt: ' . trim($alts[1]) : 'Пустой alt';
}

return getAlt();

Процесс очень простой. Сначала мы регуляркой получаем атрибут alt и его значение. Проверить результат работы регулярки можно так — var_dump($alts);, как видите у нас 2 ключа и сразу 2 нужных нам значения в массиве.

Далее с помощью тернарного оператора я проверяю на пустоту массив и вывожу значение второго по счету ключа. Если alt будет пустой или пользователь понаставит там пробелов, будет выведено сообщение «Пустой alt».