| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Класс и include |
| Автор: neoks 11.8.2011, 10:31 | ||||
| Вообщем хочу сделать ббкод, он почти готов но есть одна маленькая неприятность. Хочу чтоб можно было парсить теги, то есть у каждого модуля может быть свой парсер тега а может и не быть. Добавляются парсер путем includa, но тут есть одна загвоздка. Я пытаюсь добавить внутри класса, вообшем шас покажу. Файл ббкода.
Файл parser.php.
Как видно файлу с парсером нужна функция $this->more() в классе bb_code Проблема в том что создавать функцию в нутри функции нельзя, даже если я сделаю отдельную функцию от класса например просто more() Но и в нутри класса тоже нельзя вставлять коды, только функции и переменные. Пока не знаю что делать, только один вариант приходит это тупо за пределами класса инклюдить еше один файл с функциями |
| Автор: Absinthe 11.8.2011, 10:58 |
| 1. Занимаешься фигней. Возьми нормальный готовый парсер. BB-коды не делаются регексп-заменами. Это путь к XSS. 2. Продумай архитектуру. class BbParser {}, abstract class BbCode {}, class BBcodeItalic extends BbCode {}... 3. Через гoвнокод твоя проблема решается с помощью __call. 4. Смотри пункт 1. |
| Автор: Absinthe 11.8.2011, 23:57 | ||||
Если знаешь английский - то от Zend прочитай, который к сертификации готовит.
Добавлено через 42 секунды А если не знаешь английский - то учить придется все равно. |
| Автор: neoks 12.8.2011, 11:06 |
Да вот как раз знаю на базе чтения Проблема найти хороший, яж php учил самостоятельно, то там посмотрел то там вот и теперь знаю не плохо, но когда смотриш чужии коды начинаеш встречать фунцкии и методы которые видеш в первые. У меня свой метод изучения, я сначала смотрю код а затем в мыслях разбираю код по частям и смотрю как все происходит и зачем, результат не стал себя ждать. Нашёл неплохую документацию про классы, лан пошёл смотреть и немного подучу. |
| Автор: Absinthe 12.8.2011, 11:59 | ||||
|