Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
Nikolino
@Nikolino
PHP
Как вызвать функцию внутри метода класса?
Пишу свой микро mvc фреймворк в целях обучения построению каркаса приложения и понимания как работают фреймворки под капотом.
В Laravel, например, в методах контроллера чтоб вызвать шаблон, достаточно написать
return view('template');
и можно передавать туда переменные.
Но сама запись мне непонятна.
То есть мы вызываем функцию внутри метода без всяких $this, self и т.д.
Объясните пожалуйста как такое сделано.
Вопрос задан
более трёх лет назад
264 просмотра
3
комментария
Подписаться
1
Простой
3
комментария
Facebook
Вконтакте
Twitter
JhaoDa
@JhaoDa
Серьёзно? Бегом учить основы РНР.
Написано
более трёх лет назад
Nikolino
@Nikolino
Автор вопроса
JhaoDa
, какие основы?
Написано
более трёх лет назад
JhaoDa
@JhaoDa
Nikolino
, например, что такое функции и почему их можно вызывать из метода класса.
Написано
более трёх лет назад
Решения вопроса
1
vn_sten
@vn_sten
это хелпер для удобного чтения и использования . внутри создается класс , передаются твои параметры рендериться и вуаля , башня готова
Ответ написан
более трёх лет назад
6
комментариев
Нравится
1
6
комментариев
Facebook
Вконтакте
Twitter
Nikolino
@Nikolino
Автор вопроса
Побольше подробностей бы...
Внутри чего создается класс? Внутри хелпера? А хелпер это что? Класс?
Написано
более трёх лет назад
vn_sten
@vn_sten
есть файл helpers.php там обьявлены такие функции типа view в которые ты передаешь свои параметры а они уже создают класс , хелпер это хелпер
Написано
более трёх лет назад
JhaoDa
@JhaoDa
vn_sten
, всё просто — автор вопроса не знает, что в РНР есть функции, а не только классы с методами.
Написано
более трёх лет назад
Nikolino
@Nikolino
Автор вопроса
vn_sten
, спасибо за наводку, нашел.
Вот так это выглядит, если кому интересно.
if (! function_exists('array_add')) {
function array_add($array, $key, $value)
{
return Arr::add($array, $key, $value);
}
}
Написано
более трёх лет назад
Nikolino
@Nikolino
Автор вопроса
JhaoDa
, просто не думал что всё так просто. Я думал там какой-то секрет, вдруг внутри класса можно объявлять просто функцию, а не метод класса, и мне об этом неизвестно, оказалось всё проще. Новичок еще, бывают затупы)
Написано
более трёх лет назад
JhaoDa
@JhaoDa
Nikolino
, это «интересно» только тем, кто не использует нормальные IDE и не может одним кликом перейти к определению функции/класс/метода.
Написано
более трёх лет назад
Пригласить эксперта
Ответы на вопрос
0
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
PHP
Простой
Скачивание файла средствами php без ожидания загрузки файла?
1 подписчик
19 июл.
149 просмотров
1
ответ
PHP
+1 ещё
Простой
Почему телеграмм отправляем сразу несколько webhook?
2 подписчика
18 июл.
996 просмотров
1
ответ
PHP
Простой
Обновление версии PHP с 7.4.33 до 8.3 насколько необходимо?
2 подписчика
17 июл.
1485 просмотров
3
ответа
PHP
Средний
Почему так работает usort?
1 подписчик
17 июл.
175 просмотров
1
ответ
PHP
+2 ещё
Простой
Не приходят сообщения с контактной формы, Извините, данные не были переданы?
1 подписчик
15 июл.
214 просмотров
3
ответа
PHP
+2 ещё
Простой
Есть web-сервер на php или nodejs который поддерживает работу с .htaccess?
1 подписчик
07 июл.
1653 просмотра
5
ответов
PHP
Простой
Лишние переводы строк в ответе сервера (echo)?
1 подписчик
04 июл.
184 просмотра
1
ответ
PHP
+1 ещё
Простой
Как получить id добавленной записи PHP PDO PGSQL?
1 подписчик
01 июл.
225 просмотров
1
ответ
PHP
+1 ещё
Средний
Как получить статус доставки сообщения firebase cloud messaging?
1 подписчик
30 июн.
112 просмотров
1
ответ
PHP
+1 ещё
Средний
Почему на двух доменах один сайт грузится с разной скоростью?
1 подписчик
29 июн.
312 просмотров
1
ответ
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
PHP developer
Marfatech
PHP-developer / PHP-разработчик
Wanted
До 250 000 ₽
PHP-разработчик
SM Lab
•
Москва
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама