Это почти то же самое, что и создание обычного веб-сайта.
Обычный шаблон для веб-сайта php:
- Пользователь вводит URL
- Сервер получает URL-адрес, анализирует его и выполняет действие
- . В этом действии вы получаете / генерируете всю необходимую вам информацию для страницы
- Вы создаете страницу html / php с информацией изaction
- Сервер сгенерирует полностью HTML-страницу и отправит ее обратно пользователю
С помощью API вы просто добавляете новый шаг между 3 и 4. После 3 создайтемассив со всей необходимой информациейКодируйте этот массив в json и выходите или возвращайте это значение.
$info = array("info_1" => 1; "info_2" => "info_2" ... "info_n" => array(1,2,3));
exit(json_encode($info));
Это все для API.Для клиентской стороны вы можете вызвать API по URL.Если API работает только с get call, я думаю, что это можно сделать просто (для проверки я обычно использую curl).
$info = file_get_contents(url);
$info = json_decode($info);
Но более распространенным является использование библиотеки curl для выполнения get и postвызов.Вы можете спросить меня, нужна ли вам помощь с curl.
Как только вы получите информацию из API, вы можете выполнить шаги 4 и 5.
Посмотрите php doc для функции json и file_get_contents.
curl: http://fr.php.net/manual/fr/ref.curl.php
EDIT
Нет, подождите, я не понимаю."php API page" что вы подразумеваете под этим?
API - это только создание / восстановление вашего проекта.Вы НИКОГДА не отправляете напрямую результат html (если вы создаете веб-сайт).Вы вызываете API с URL-адресом, информацией о возврате API, вы используете эту информацию для создания окончательного результата.
ex: вы хотите написать html-страницу, которая скажет привет xxx.Но чтобы получить имя пользователя, вы должны получить информацию из API.
Итак, предположим, что в вашем API есть функция, в которой аргумент user_id имеет значение и возвращает имя этого пользователя (скажем, getUserNameById (user_id)), и вы вызываете эту функцию только по URL, такому как ваш / api / ulr./getUser/id.
Function getUserNameById(user_id)
{
$userName = // call in db to get the user
exit(json_encode($userName)); // maybe return work as well.
}
Со стороны на стороне клиента вы делаете
$username = file_get_contents(your/api/url/getUser/15); // You should normally use curl, but it simpler for the example
// So this function to this specifique url will call the api, and trigger the getUserNameById(user_id), whom give you the user name.
<html>
<body>
<p>hello <?php echo $username ?> </p>
</body>
</html>
Таким образом, клиент никогда не обращается напрямую к базам данных, что роль API.
Это понятнее?