Новый комментарий

Kirill.K 29.11.2018 в 00:28

При добавлении функции add в апиКонтроллер Шторм выдал ошибку об отсутствии ext-json в composer.json, исправил добавлением в него строчки

"ext-json": "*"

Так, добавление, может пригодится кому

ivashkevich 29.11.2018 в 10:13

Да, последние версии шторма начали требовать это. Спасибо =)

sirserik 23.04.2019 в 13:35

Уважаемый автор,я вот хочу реализовать свой мини сайт доску объявлений с регистрацией и авторизации пока только для сайта,и restapi чтобы я мог мобильное приложение создать под него. Но не знаю как сделать регистрацию и авторизацию по токенам. Может вы добавите урок как можно это сделать. Фреймворки пока не хочу юзать они потребляют колоссально много ресурсов хостинга, пока для меня это не позволительная роскошь.

ivashkevich 25.04.2019 в 07:39

Так ведь в этом курсе всё есть) И регистрация и авторизация

sirserik 25.04.2019 в 11:11

Я имею ввиду по токенам для rest

ivashkevich 25.04.2019 в 12:15

То же самое что и в уроках, только вместо куки токен будете брать из заголовков.

OneMoreTime 05.04.2020 в 15:32

1.
Каким образом вызывается метод jsonSerialize()? В коде вроде нет явного обращения к этому методу.

2.
В данном случае(да хотя бы в рамках примеров из урока), при работе с API уместно было бы использование cURL вместо Postman?

3.

file_get_contents('php://input')

Если принимаем какие-то данные API с какого-то ресурса, вместо php://input просто вставляем ссылку?


В качестве мыслей вслух: Вроде ж и фронт-контроллер практически идентичный тому что уже писали ранее в index.php, а все равно по памяти не получилось все воспроизвести, пришлось подглядывать в образец с урока/с готового кода в файле, хотя понятна каждая строчка - что для чего и как работает... Так же и часть методов/классов, что писали ранее - по памяти все так же вряд ли напишу с нуля, а по написанному коду - все предельно ясно - что зачем и почему. Т.е. с готовым кодом в качестве шпаргалки можно что-то самому написать, но в голове все не держится, боюсь, что придется все заново пробегаться, хотя бы освежить в памяти, наизусть что-ли заучивать... "Стек напроход" получается - пока одно самое свежее осваиватся, самое старое частично стирается из памяти - в глубокий пассив переходит, или я слишком много времени в деталях копаюсь, пытаюсь более подробно изучить вопрос, а на этом фоне основная информация плох закрепляется, то ли практики очень мало, то ли темп изучения слишком быстрый. Хотя сейчас уже на пройденный материал смотришь более осознанно. Особенно проблема с названиями и синтаксисом встроенных функций, а шторм не всегда подсказывает...

ivashkevich 06.04.2020 в 07:23
  1. json_encode проверяет реализацию интерфейса, если реализует, то вызывается метод.
  2. Вполне
  3. Советую использовать для походов в API библиотеку guzzle. Но в самых простых случаях можно так, как вы написали

Попробуйте несколько раз подряд написать самостоятельно) Ну и нужно понимать, что реализация может очень сильно отличаться. Если вы в целом можете реализовать такой компонент но по-своему - это большой успех.

Dmitry.Dudin 29.04.2020 в 10:44

Божественно, доходчиво, куда лайк ставить?
Кстати, а почему бы не добавить рейтинг урокам? Типа лайк-дизлайк. Можно будет составлять рейтинг уроков, а те, у которых плохой рейтинг - дорабатывать в соответствии с теми, которые нравятся пользователям. Стандартная продуктовая история, которая всегда работала!)

ivashkevich 29.04.2020 в 20:16

Хех) Ну в целом можно. Но как правило дизлайк или в комментарии летит, или мне в личку.

VitaliyB 29.09.2020 в 10:17

Что-то я немного запутался((
Напомните, пожалуйста, в каком из уроков мы писали AbstractController?
Или можно ссылку на исходники? Спасибо!!!

ivashkevich 29.09.2020 в 19:39

Это было вот тут

SempeR 23.10.2020 в 15:09

Приветствую)
У меня браузер отображает данные из статьи (кириллицу) в символах Unicode. А у вас в коде все нормально. Можно ли использовать второй параметр для этого в функции json_encode($data, JSON_UNESCAPED_UNICODE)? Влияет ли это на что-то в дальнейшем? И почему у вас не требуется этот второй параметр, а мне он нужен (может, проблема в браузере Opera)?

ivashkevich 26.10.2020 в 13:25

Привет. Да, можно использовать. По поводу влияния - не в курсе, погуглите)

ivashkevich 26.10.2020 в 13:26

Можете еще поставить расширение для браузера, которое форматирует JSON. Не знаю правда, есть ли в опере такое.

OneMoreTime 18.05.2021 в 00:28

Было бы круто еще про cors, погонять запросы между фронтом и бэком на разных доменах...

ivashkevich 19.05.2021 в 21:30

Предлагайте тему) https://php.zone/post/offer-theme

SkSeMi 05.09.2021 в 19:45

Привет. В принципе все общее представление об REST API имеется, но е понятно как узнать какой тип запроса. и где именно разбирать и соответствующим образом реагировать на них?

ivashkevich 06.09.2021 в 11:59

Как узнать тип запроса на беке средствами PHP? Если да, то он лежит в

$_SERVER['REQUEST_METHOD']
SkSeMi 07.09.2021 в 22:56

Артём! Я знаю про ассоциативный массив этот и где там лежит метод запроса. Я немного спрашиваю про другое. Где на каком уровне смотреть метод запроса, проверять его и запускать соответствующий метод соответствующего АПИ контроллера.
Где эти соответствия задаются, проверяются и срабатывают?

ivashkevich 08.09.2021 в 14:29

В роутинге. Там же где происходит матчинг URL, добавляется проверка на метод запроса. Для одного и того же URL разные методы могут (и должны) вызывать разные экшены.

SkSeMi 12.09.2021 в 14:33

Спасибо! Но каким образом это указать!?
Напрммер как по нкоторой аналогии в ларавеле
Урл - > метод запррса, контрооелр, метод

ivashkevich 26.09.2021 в 07:28

Ну и укажи так же, в чём проблема-то?

[email protected] 10.09.2021 в 12:55

отключить Enable SSL certificate verification
Пришлось отключить эту опцию, иначе получалась ошибка ENOTFOUND в Postman

kriodezz 08.06.2022 в 14:25

Отправляя запрос через Postman, можно как-то x-дебагом отследить работу скрипта?

ivashkevich 16.06.2022 в 16:13

Можно query-параметр добавить ?XDEBUG_SESSION_START=PHPSTORM

kriodezz 16.06.2022 в 18:28

Да, уже разобрался. Спасибо)

Логические задачи с собеседований