![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| neoks |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 425 Регистрация: 5.7.2010 Репутация: нет Всего: 1 |
Вообщем хочу сделать ббкод, он почти готов но есть одна маленькая неприятность.
Хочу чтоб можно было парсить теги, то есть у каждого модуля может быть свой парсер тега а может и не быть. Добавляются парсер путем includa, но тут есть одна загвоздка. Я пытаюсь добавить внутри класса, вообшем шас покажу. Файл ббкода.
Файл parser.php.
Как видно файлу с парсером нужна функция $this->more() в классе bb_code Проблема в том что создавать функцию в нутри функции нельзя, даже если я сделаю отдельную функцию от класса например просто more() Но и в нутри класса тоже нельзя вставлять коды, только функции и переменные. Пока не знаю что делать, только один вариант приходит это тупо за пределами класса инклюдить еше один файл с функциями |
||||
|
|||||
| Absinthe |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 5 Всего: 11 |
1. Занимаешься фигней. Возьми нормальный готовый парсер.
BB-коды не делаются регексп-заменами. Это путь к XSS. 2. Продумай архитектуру. class BbParser {}, abstract class BbCode {}, class BBcodeItalic extends BbCode {}... 3. Через гoвнокод твоя проблема решается с помощью __call. 4. Смотри пункт 1. |
|||
|
||||
| neoks |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 425 Регистрация: 5.7.2010 Репутация: нет Всего: 1 |
В последние время начал встречать классы с public, private и тд. , блин как это все называется и где моно найти статьи про все это, а то все это для меня впервые
А моно пример, я шас вообше не шарю что тут происходит, и если не трудно показать как потом можно будет подключить дополнительные парсеры. |
|||
|
||||
| Absinthe |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 5 Всего: 11 |
Если знаешь английский - то от Zend прочитай, который к сертификации готовит.
Добавлено через 42 секунды А если не знаешь английский - то учить придется все равно. |
||||
|
|||||
| neoks |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 425 Регистрация: 5.7.2010 Репутация: нет Всего: 1 |
Да вот как раз знаю на базе чтения Проблема найти хороший, яж php учил самостоятельно, то там посмотрел то там вот и теперь знаю не плохо, но когда смотриш чужии коды начинаеш встречать фунцкии и методы которые видеш в первые. У меня свой метод изучения, я сначала смотрю код а затем в мыслях разбираю код по частям и смотрю как все происходит и зачем, результат не стал себя ждать. Нашёл неплохую документацию про классы, лан пошёл смотреть и немного подучу. |
|||
|
||||
| Absinthe |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 526 Регистрация: 4.5.2011 Репутация: 5 Всего: 11 |
|
||||
|
|||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |