Свое знакомство с php я начал именно с парсинга, в дальнейшем для облегчения я попробовал использовать Simple HTML DOM Parser. С ним работать очень удобно, но он жрет очень много памяти, и там где происходит много итераций с его участием скрипт завершает свою работу с Fatal error из за не хватки памяти.
Вообщем нашел я ему замену, регулярка которая парсит содержимое элемента по указному id или class-у.
class ParsDom {
public$sContent = '';
publicfunction getElement($sId = '', $sElem = 'div') {
if (!$sId || !$this->sContent) return'';
$aOut[0] = array();
$sReg = "
/
<{$sElem}[^>]+\b(?:class|id)=[\"\']?{$sId}[\"\']?[^>]*>
(?:
(<{$sElem}[^>]*>*?<\/{$sElem}>)|
.
)*?
<\/{$sElem}>
/xsS";
preg_match_all($sReg, $this->sContent, $aOut);
if (isset($aOut[0]))
return$aOut[0];
elsereturn'';
}
}
// Пример$oParsDom = new ParsDom;
// Контент от куда будем парсить$oParsDom->sContent = $sData;
// Парсим все DIV элементы с указаным id или классом$aDiv = $oParsDom->getElement('class_or_id_name');
// Парсим все LI элементы с указаным id или классом$aLi = $oParsDom->getElement('menu', 'li');
Выходные. У нас жара, побиты все рекорды, температура за 40. Леса горят, вроде уже поменьше, т.к. меньше смога на улице.
Вчера посмотрел фильм Мухина "Максимум лжи и глупости" про высадку американцев на Луне. Говорит логичные вещи, у них не было возможности туда доставить космонавтов и обратно, т.к. не было таких мощных двигателей и до сих пор нет. Также привезенные 300кг лунного грунта никому не дают на анализ, а кому давали, установили, что он с земли.
Все парюсь с PHP. В который раз, переделываю механизм процессов, теперь на ООП. Все это трудно укладывается в голове, поэтому заюзал сервис "карт ума" и чего то там изобразив пытаюсь воплотить в коде, надеюсь получится и переписывать не придется.
Жена с детьми отдыхают на волге, ездят с родителями на острова, купаются. Ну ничего, еще немного, у меня будет отпуск и я первый раз поеду с семьей на море в Анапу.
Почему блоггер не сохраняет мое форматирование! Аргх... Приходится ручками раставлять теги br
Мое знакомство с фреймворками началось с CodeIgniter. У него хорошая документация, есть сообщество, он до недавнего времени был самым быстрым (вроде бы). Но он уже давно не обновлялся и устарел.
Я давно уже планирую реализовать небольшой проект. Что то типа соц. сети, но со своими плюшками. Ну и надумал использовать для этого фреймворк. Хочется сделать все по грамотному, как можно меньше говно кода и т.д. При создании чего либо, очень важна архитектура.
Посмотрел Zend Framework. Этот фреймворк достаточно мощный, и возможностей у него много. Мне не понравилось что он изначально интегрирован с Dojo с которым я не дружу. jQuery там опционально поддерживается, но уж очень много нужно плясок с бубном, чтобы все работало как надо. Мультиязычность тоже проблема.
Попробовал Yii. Первые впечатления: Я в восторге! Он сам генерирует код! Обалденно... наверное, это что то подобное ROR. Он сразу же дружит с jQuery.