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

Где взять информацию про конструкции типа $row['topic_id']?

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
mike2003
phpBB 2.0.5
Сообщения: 452
Стаж: 8 лет
Благодарил (а): 27 раз
Поблагодарили: 8 раз

Где взять информацию про конструкции типа $row['topic_id']?

Сообщение mike2003 »

При изучении чужих расширений попадаю на конструкции данных вида:

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

$row['topic_id']
t.forum_id
topicrow.TOPIC_TITLE
t.topic_last_post_id
и другие...
Подскажите где можно прочитать, что они значат и по каким законам формируются?? Остальное более менее понимаю, а про это нигде ничего не пишут, но должен же быть источник информации?!
По названиям я примерно могу понять, что это, но хочу знать точно и уметь менять по необходимости.
Перенесено из форума Поддержка расширений для phpBB 3.1.x в форум Для авторов (phpBB 3.1.x) 29.04.2016 5:10 модератором rxu

Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение Sheer »

$row['topic_id'] - элемент массива $row, индексом которого является topic_id
t.forum_id - здесь t - это алиас какой-то таблицы БД. Алиасы таблиц используются для создания sql-запросов, в которых фигурируют две или более таблиц БД.
topicrow.TOPIC_TITLE - элемент объекта шаблона, в данном случае topicrow. Такой объект формируется функцией assign_block_vars класса $template, html-парсером грубо говоря. Используется в html-шаблонах в конструкциях, таких как

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

<!-- BEGIN ... -->
<! -- END ... ->
Смотри Руководство по синтаксису шаблонов
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
mike2003
phpBB 2.0.5
Сообщения: 452
Стаж: 8 лет
Благодарил (а): 27 раз
Поблагодарили: 8 раз

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение mike2003 »

Sheer писал(а): topicrow.TOPIC_TITLE
а почему например в одном расширении ссылаются с {topicrow.NAME}
а в другом напрямую {NAME} без topicrow. (имена переменных конечно разные)
в шаблонах?
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение rxu »

Одна переменная идёт в цикле, другая нет.
Изображение
Аватара пользователя
mike2003
phpBB 2.0.5
Сообщения: 452
Стаж: 8 лет
Благодарил (а): 27 раз
Поблагодарили: 8 раз

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение mike2003 »

нет никаких циклов
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение rxu »

mike2003 писал(а): нет никаких циклов
Без понятия. Я отвечаю на поставленный вопрос
mike2003 писал(а): почему например в одном расширении ссылаются с {topicrow.NAME}
а в другом напрямую {NAME} без topicrow
Изображение
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12372
Стаж: 12 лет 7 месяцев
Благодарил (а): 223 раза
Поблагодарили: 3517 раз
Контактная информация:

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение Татьяна5 »

mike2003 писал(а): нет никаких циклов
Не может быть, без цикла такая переменная работать не будет. Только в цикле <!-- BEGIN topicrow --> <!-- END -->

Отправлено спустя 2 минуты 21 секунду:
Другое дело, что сам цикл может быть задан не в файле расширения, а в файле движка, в стиле

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

<!-- BEGIN что-то-там -->
код
<!-- EVENT который используется в расширении -->
ещё код
<!-- END -->
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 17 лет 1 месяц
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2752 раза
Контактная информация:

Re: Где взять информацию про конструкции типа $row['topic_id']?

Сообщение Sheer »

mike2003 писал(а): а почему
А потому что в одном случае это элемент объекта, а в другом объект. По аналогии массив/переменная. Кстати, по ссылке, что я привел, об этом написано, потрудитесь почитать.
Назначение единичной переменной
Назначение массива переменных
Блоки
Это про
mike2003 писал(а): а про это нигде ничего не пишут
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Ответить

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