Для добавления зависимости в проект на Laravel, используйте менеджер пакетов Composer:
composer require russsiq/laravel-dom-manipulator
Если в вашем приложении включен отказ от обнаружения пакетов в директиве dont-discover
в разделе extra
файла composer.json
, то необходимо самостоятельно добавить следующее в файле config/app.php
:
- Провайдер услуг в раздел
providers
:
Russsiq\DomManipulator\ManipulatorServiceProvider::class,
- Псевдоним класса (Facade) в раздел
aliases
:
'DOMManipulator' => Russsiq\DomManipulator\Facades\DOMManipulator::class,
Все публичные методы доступны через фасад DOMManipulator
:
DOMManipulator::someMethod(example $someParam);
Список доступных публичных методов фасада DOMManipulator
:
Выполнить замыкание над каждым узлом с заданным именем.
Извлечение массива путей изображений.
Получить строковое представление содержимого текущего Документа.
Удалить все теги, содержащие переданное имя.
Скорректировать теги pre
:
- оставить единый класс для всех тегов;
- преобразовать значения тегов в HTML-сущности.
Для инициализации класса-обертки Manipulator
вы можете воспользоваться методом wrapAsDocument
фасада DOMManipulator
:
use Russsiq\DomManipulator\Facades\DOMManipulator;
// Предположим некое содержимое.
$content = '<h2>Velit rerum aut adipisci eius et est deserunt et et error</h2>'.PHP_EOL;
$content .= '<p>Dolore quidem <strong>dolorem</strong> ratione aut similique qui.</p>'.PHP_EOL;
$content .= '<pre>$manipulator = $this->createManipulator();</pre>'.PHP_EOL;
$content .= '<script>alert("Hello!");</script>'.PHP_EOL;
// Обернем содержимое как HTML-документ.
$result = DOMManipulator::wrapAsDocument($content)
// Скорректируем теги `pre`.
->revisionPreTag()
// Удалим нежелательные теги с их значениями.
->remove('script');
// Распечатаем результат.
print_r((string) $result);
// <h2>Velit rerum aut adipisci eius et est deserunt et et error</h2>
// <p>Dolore quidem <strong>dolorem</strong> ratione aut similique qui.</p>
// <pre class="ql-syntax" spellcheck="false">$manipulator = $this->createManipulator();</pre>
Для запуска тестов используйте команду:
composer run-script test
Для запуска тестов и формирования agile-документации, генерируемой в HTML-формате и записываемой в файл tests/testdox.html, используйте команду:
composer run-script testdox
Для удаления пакета из вашего проекта на Laravel используйте команду:
composer remove russsiq/laravel-dom-manipulator
laravel-dom-manipulator
– программное обеспечение с открытым исходным кодом, распространяющееся по лицензии MIT.