18
Окт
2016

phpQuery: не работает манипуляция с объектами в файле

Проблема: не работает манипуляция с объектами средствами бибилиотеки phpQuery в уже созданном php-файле. Моя задача - менять содержимое уже созданного php-файла с html-разметкой.

$doc = phpQuery::newDocumentFile("../".$filename); // здесь всё работает; у меня это файл test.php
$title = $doc['title']; // Здесь всё нормально; выводил через echo $title->text();
$title->text("content"); // Не работает
$doc->find('#test')->append('some content'); // Не работает

Последняя строка в точности из готовых примеров, разве что ID поменял на свой. Видимо, я упустил какие-то ограничения библиотеки на возможности работы с файлами. Если это так, то какие именно?


Обновление

Добавлю MWE-исходники. Хотел выложить код напрямую сюда, но часть кода не отображается.

Т. к. пока не знаю причины проблемы, то не исключаю, что дело не в программе, потому если у Вас всё работает - так и напишите. Также, если у Вас получиться выполнить замену, прошу Вас пояснить причину, по которой ранее не получалось.


Обновление

Выяснил, что если запросить <xmp><?= $doc ?></xmp>, то в выведенном HTML-коде изменения будут. Может быть phpQuery просто не влияет на исходный файл и нет другого пути, кроме как редактировать его стандартными php-средствами (fopen, fwrite, регулярные выражения)?

Источник: https://ru.stackoverflow.com/questions/579448/phpquery-%D0%BD%D0%B5-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-%D0%BC%D0%B0%D0%BD%D0%B8%D0%BF%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F-%D1%81-%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%B0%D0%BC%D0%B8-%D0%B2-%D1%84%D0%B0%D0%B9%D0%BB%D0%B5

Share

Тебе может это понравится...