хватит тупить. в указанном варианте вызова preg_match возвращает количество найденных соответствий.
mixed preg_match ( string $pattern, string $subject [, array $&matches [, int $flags [, int $offset]]] )
а просто прочитать описание функции, прежде чем использовать, лень?
preg_match — выполняет проверку на соответствие регулярному выражению,возвращает количество найденных соответствий.
если "занудствовать" по полной программе, то для всех таблиц обычно нужно и хватает этого:
table{border-collapse:collapse;border-spacing:0;}td{vertical-align:top;}
всё, остальное - варианты дизайна...
инлайн стили есть не гуд, порочная привычка, лучше такого не советовать...
если такие вещи изучать, лучше сразу с Boilerplate начинать, а не по частям искать "лечилки" когда упрёшься в проблему...
так в том то и дело и засада, что "модульные" ;) а написав подобие такого проcтенького плагина скрипты можно вставлять в любое место: хоть в тело любого модуля, хоть в тело страницы - всё это перехватывается onContentPrepare...
и? тогда процесс "вставить что то в середину файл" будет типа такого:
0. открыть поток fopen-ом
1. прочитать fread-ом в строку n байт начиная с начала файла
2. сдвинуться fseek-ом на k байт
3. прочитать fread-ом в строку всё до конца файла
5. поизвращаться со строками - получить строку-результат
4. сбросить rewind-ом позицию на начало
6. записать fwrite-ом из строки-результата новое содержимое файла
7. закрыть поток fclose-ом
в чём особый выигрыш? что не пишем в память старый вариант того, что меняем? это да, но обычно это доли процента от общего объёма.
если бы fwrite умел вставлять данные, а не тупо переписывать байт в байт эти игры имели бы смысл. а так - одно и то же как в самом простом варианте по сути...
ерунда полная этот модуль, да и использование ифрейма ерунда.
есть универсальный метод, с затратами времени 30 мин макс:
1. в модулях вместо <?php ... ?> пишем что то вроде {php} ... {/php} и вместо <script> ... </script> пишем {script} ... {/script} и вооще всё что мешает (noscript-ы всякие и т.п.) таким образом "шифруем" от Джумлы. все коды внутри пишем без двойных кавычек - их Джумла убивает вне тегов HTML.
2. пишется простенький плагинчег на одну функцию: по евенту onContentPrepare отловить все эти шифры и привести к нормальному виду. ну а весь PHP код внутри {php} ... {/php} отработать с помощью eval и только потом вставить.
все дела.
применений этой шифрации/дешефрации и кроме выполнения скриптов можно массу придумать, конкретно спасает от долбанных ограничений Джумлы.
в плагин можно ещё и обработку события onBeforeRender вставить и там вырезать из буфера те куски бесполезного мусора, который Джумла всовывает в любую старницу...
это "адаптивный дизайн" - Media Queries отрабатывают свой дело в CSS, гуглите.
а вообще, ничего сложного: связка Modernizr + Responds (если браузер сам не поддерживает media queries) + блоки в CSS типа
... основной текст: вариант стилей для айфона ...@media only screen and (min-width: 768px){ вариант стилей для портрета айпада }@media only screen and (min-width: 992px){ вариант стилей для альбома айпада }@media only screen and (min-width: 1332px){ вариант стилей для больших мониторов }
и будет аааафигенно адаптивный дизайн. чОткая вещь, а Modernizr сам по себе незаменимая штука для кроссбраузерности...
в чём вопрос?
1. то что надо записать видимо уже в строке
2. читаем файл в другую строку
3. делаем с этими строками то что и так как хотим
4. результат пишем в файл
проще процесс придумать сложно...