Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Расширения - это просто!

Форум для авторов расширений для phpBB. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.3.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 11 лет 8 месяцев
Откуда: Израиль
Благодарил (а): 73 раза
Поблагодарили: 248 раз

Re: Расширения - это просто!

Сообщение Алг »

xisp, а смысл?
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

Проще и производительнее.
phpBBex
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16359
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1742 раза

Re: Расширения - это просто!

Сообщение rxu »

Не стал бы так уверенно говорить насчет простоты.
В расширении однозначно проще:
- установка/удаление;
- правка и доработка кода происходит фактически только в одном месте.
Изображение
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 11 лет 8 месяцев
Откуда: Израиль
Благодарил (а): 73 раза
Поблагодарили: 248 раз

Re: Расширения - это просто!

Сообщение Алг »

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

Т. Шаов
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

rxu писал(а):Не стал бы так уверенно говорить насчет простоты.
Системы контроля версий возьмут на себя автоматическое обновление любого количества изменений.
Я не спорю, что расширения- отличное решение для распространения. Но для себя лично, приватные правки- сомнительно, что расширения выигрышнее.
Алг писал(а):Я бы и насчёт производительности поспорила.
Поспорим.
Вместо добавления <li><a title="тайтл" href="./ссылко.php">Моя ссылко</a></li> я создаю целый файл с тем же содержимым. Содержимое то же, но отдельный файл создаёт оверхед по скорости.
Вместо добавления одной строки, к примеру для удаления двух и более переводов строки до одного (реальная ситуация, тут на форуме просили):

Код: Выделить всё

$message = preg_replace('#[\n]{3,}#', "\n\n", $message);
Я добавляю вот такой файл (тут много лишнего, но суть не меняется. Расширение к с тати рабочее, если добавить другие файлы):
Скрытый текст

Код: Выделить всё

<?php
/**
*
* @package replace3newline
* @copyright (c) 2014 Xisp
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/

namespace xisp\replace3newline\event;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;

/**
* Event listener
*/
class listener implements EventSubscriberInterface
{
    public function __construct(\phpbb\config\config $config, \phpbb\db\driver\driver $db, \phpbb\auth\auth $auth, \phpbb\template\template $template, \phpbb\user $user, $phpbb_root_path, $php_ext)
    {
        $this->template = $template;
        $this->user = $user;
		$this->auth = $auth;
		$this->db = $db;
		$this->config = $config;
		$this->phpbb_root_path = $phpbb_root_path;
		$this->php_ext = $php_ext;
    }
	static public function getSubscribedEvents()
	{
		return array(
			'core.modify_submit_post_data'	=>	'replace_3_newline',
		);
	}


	public function replace_3_newline($event)
	{
		global $phpEx;

		$data	= $event['data'];

		$data['message'] = preg_replace('#[\n]{3,}#', "\n\n", $data['message']);

		$event['data'] = $data;

	}
}
Плюс ещё четыре файла со своим содержимым и три папки.
Мой код вместо того, чтобы просто поменять содержимое сообщения, запускает целый механизм, фабрики фабрик так сказать, которые передают моему коду кучу ненужного вместе с нужным, я копирую это, меняю, замещаю. Если по вашему всё это будет производительным...
phpBBex
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16359
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1742 раза

Re: Расширения - это просто!

Сообщение rxu »

Никто не говорит, что расширения ускоряют работу кода. Но не сказать, что фатально замедляют. Помогает кэширование.
Изображение
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 11 лет 8 месяцев
Откуда: Израиль
Благодарил (а): 73 раза
Поблагодарили: 248 раз

Re: Расширения - это просто!

Сообщение Алг »

А кому сейчас легко :)
Я в общем-то про повышение производительности при написании кода.
А фабрика фабрик, ну что поделать, хотите красиво программировать - от паттернов вам никуда не деться
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

rxu писал(а):Помогает кэширование.
Только на него и надеюсь.
Алг писал(а):Я в общем-то про повышение производительности при написании кода.
Ага, вон сколько строк накопипастил там, где раньше можно было обойтись одной строкой :)
Алг писал(а):А фабрика фабрик, ну что поделать, хотите красиво программировать - от паттернов вам никуда не деться
Просто код пишется один раз, а исполняется миллионы раз. Почему все сейчас стараются ускорить первую стадию в ущерб второй?
phpBBex
Shredder
Former team member
Сообщения: 2224
Стаж: 15 лет 4 месяца
Благодарил (а): 124 раза
Поблагодарили: 138 раз

Re: Расширения - это просто!

Сообщение Shredder »

Алг писал(а): хотите красиво программировать
А что такое "красиво"? Для меня, например, это 1 строчка кода, а не 50.
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

Shredder писал(а):Для меня, например, это 1 строчка кода, а не 50.

Код: Выделить всё

$переменная = preg_match_all("#^(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])(\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])){3}(-(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])(\.(25[0-5]|2[0-4][0-9]|[0-1][0-9]{2}|[0-9]{2}|[0-9])){3})?$#m", $другая_переменная);
Понятно до безобразия )))
phpBBex
Аватара пользователя
Алг
Former team member
Сообщения: 933
Стаж: 11 лет 8 месяцев
Откуда: Израиль
Благодарил (а): 73 раза
Поблагодарили: 248 раз

Re: Расширения - это просто!

Сообщение Алг »

Не ну любую идею можно до абсурда довести. И в одну строку весь проект запихнуть тоже можно, а строчка xisp-а очень даже впечатляет :)
И использовать всю мощь фабрики фабрик фабрик, чтобы вывести "hello world" тоже можно

по мне использование ООП в больших проектах, таких как движок PHPBB оправдано, а неиспользование его никак не оправдано, другое дело, что в новой версии всё ещё настолько сыро и не настолько продумано, изолированность и независимость расширений друг от друга не реализована, след. конфликтов модов не избежать( пока во всяком случае), что приходится согласиться с xisp-ом, и для себя по-прежнему использовать кастомный код через свои классы и хуки, а файлы движка оставить чистыми пока
Там упёртость и инертность, могут, кстати, в морду дать.
А ты проявляй интеллигентность, постарайся убеждать...

Т. Шаов
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

Алг писал(а):а строчка xisp-а очень даже впечатляет
Так и не рискнул вывести в продакшн.
Алг писал(а):по мне использование ООП в больших проектах, таких как движок PHPBB оправдано, а неиспользование его никак не оправдано,
Вконтакте например не использует ООП практически вообще.
Я за функциональное программирование.
Алг писал(а): что приходится согласиться с xisp-ом
Да будет дружба)))
phpBBex
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16359
Стаж: 17 лет 11 месяцев
Откуда: Красноярск
Благодарил (а): 521 раз
Поблагодарили: 1742 раза

Re: Расширения - это просто!

Сообщение rxu »

Есть категория пользователей, которым как ни сделай - всё плохо.
Нет ничего идеального в нашем мире. Тем более среди программных продуктов.
На вкус и цвет все фломастеры разные, но можно выбрать себе по вкусу.
Изображение
Аватара пользователя
Борис Бердичевский
phpBB 3.0.0 RC1
Сообщения: 1457
Стаж: 16 лет 3 месяца
Откуда: Израиль, Беэр-Шева
Благодарил (а): 33 раза
Поблагодарили: 61 раз

Re: Расширения - это просто!

Сообщение Борис Бердичевский »

Что-то у меня ничего не получается с
/ext/tatiana5/quickreply
Такое впечатление, что копирование всех файлов (раскрытых из zip) в эту папку ни на что не влияет, система на это никак не реагирует...
После нескольких лет общения здесь и техсопровождения форумов я наконец понял, что ничего не понимаю в phpBB!
Аватара пользователя
xisp
phpBB 3.0.0 RC7
Сообщения: 1798
Стаж: 11 лет 11 месяцев
Благодарил (а): 101 раз
Поблагодарили: 91 раз
Забанен: Бессрочно

Re: Расширения - это просто!

Сообщение xisp »

В админке устанавливали? УМВР. Проверьте, есть ли в указанной вами папке ext.php и друге файлы.
Последний раз редактировалось xisp 12.11.2014 0:39, всего редактировалось 1 раз.
phpBBex

Вернуться в «Для разработчиков»