Опубликовано: 31 января 20206 г Не буду объяснять зачем вам нужно API в вашем приложении. Просто покажу простейшую реализациюЖелательно ознакомиться с этим Подготовим .htaccessRewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule .* index.php [L] Начнем с index.phpОн отвечает за роутинг по сайту (api или отображение контента), но в нашем случае линкует лишь на API<?php $routes = explode('/', $_SERVER['REQUEST_URI']); if ($routes[1] == 'api') { include 'api.php'; } Создаем файл api.php в который будет неявно передаваться переменная $routes<?php try { header('Content-Type: application/json'); http_response_code(200); include __DIR__ . "/engine/api/$routes[2]/$routes[3].php"; } catch (RuntimeException $e) { http_response_code(500); print json_encode([ 'issueType' => substr(strrchr(get_class($e), "\\"), 1), 'issueMessage' => $e->getMessage(), 'issueCode' => $e->getCode() ]); } В общем-то на этом все. Теперь пишем примерыСоздаем папку engine,в которой будут конфиги и прочий ваш код. В ней же создаем папку apiДальше по вашей структуре. К примеру взаимодействие с пользователями:/engine/api/usersДля примера добавление пользователя и вывод списка всех пользователей add.php<?php use Exception\IllegalArgumentException; use Database\PDO; $mysqli = new PDO(); $request = json_decode(file_get_contents("php://input"), true); if (!isset($request['name'])) throw new IllegalArgumentException("Fields must be exists"); $mysqli->addAuthor($request['name']); get_all.php<?php use Database\PDO; print json_encode((new PDO())->getAuthors()); Использованиеexample.com/api/users/addPOST запрос с параметрами string name example.com/api/users/get_allPOST запрос без входных параментров
Создайте аккаунт или войдите в него для комментирования