Dengan pembangunan dan pempopularan Internet, pelbagai aplikasi mempunyai permintaan yang semakin meningkat untuk data. Untuk mendapatkan lebih banyak data, API pihak ketiga (Antara Muka Pengaturcaraan Aplikasi) semakin digunakan. API merujuk kepada beberapa arahan atau antara muka yang disediakan oleh aplikasi yang boleh digunakan untuk mengakses data bahagian belakang aplikasi. Dalam artikel ini, kami akan menerangkan cara mengakses dan menghuraikan data pulangan API menggunakan PHP.
API ialah singkatan, nama penuhnya ialah Antara Muka Pengaturcaraan Aplikasi, yang diterjemahkan kepada antara muka pengaturcaraan aplikasi. Ia biasanya merujuk kepada beberapa antara muka perisian atau perkhidmatan yang membenarkan perisian atau perkhidmatan lain mengakses data atau fungsi bahagian belakangnya. API adalah untuk pembangun dan biasanya berkomunikasi melalui protokol HTTP (Hypertext Transfer Protocol).
Menggunakan API boleh membantu kami mendapatkan beberapa data terbuka, bertanya beberapa perkhidmatan, mendapatkan beberapa sumber, dsb. Sebagai contoh, kita boleh menggunakan API Cuaca untuk mengakses data cuaca (suhu, kelajuan angin, hujan, dll.) di rantau kita boleh menggunakan API Berita untuk mendapatkan tajuk, kandungan, pengarang, masa keluaran, dsb berita.
Seterusnya kami akan memperkenalkan cara menggunakan PHP untuk mengakses API. Mula-mula kita perlu mengetahui beberapa kaedah biasa untuk mendapatkan data: GET, POST, PUT, DELETE. Di sini kami hanya memperkenalkan kaedah GET.
2.1 Menggunakan fungsi file_get_contents
PHP menyediakan fungsi file_get_contents yang boleh digunakan untuk mendapatkan data daripada pelayan jauh. Kita boleh menggunakan fungsi ini untuk mengakses API dan mendapatkan data yang dikembalikan.
Sebagai contoh, kami boleh mengakses API format JSON, kodnya adalah seperti berikut:
<?php $url = 'https://jsonplaceholder.typicode.com/users/1'; $data = file_get_contents($url); echo $data; ?>
Dalam contoh ini, kami menggunakan fungsi file_get_contents untuk mengakses API RESTful (Representational State Transfer, representational state transfer), API ini boleh mengembalikan maklumat pengguna, kami meminta maklumat pengguna dengan id 1. Data yang diperoleh ialah rentetan dalam format JSON, dan kami menggunakan fungsi gema untuk mengeluarkannya ke halaman.
2.2 Menggunakan fungsi cURL
Selain menggunakan fungsi file_get_contents, kita juga boleh menggunakan fungsi cURL untuk mendapatkan data. cURL ialah alat yang digunakan untuk memindahkan fail dan data Ia boleh memindahkan data melalui banyak protokol, termasuk HTTP, FTP, SFTP, dll.
Sebagai contoh, kita boleh menggunakan fungsi cURL untuk mengakses API format JSON, kodnya adalah seperti berikut:
<?php $url = 'https://jsonplaceholder.typicode.com/users/1'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); curl_close($ch); echo $data; ?>
Dalam contoh ini, kami menggunakan fungsi curl_init untuk memulakan sesi cURL, dan gunakan fungsi curl_setopt untuk menyediakan pilihan cURL. Tetapkan pilihan CURLOPT_URL untuk menentukan URL yang diminta dan tetapkan pilihan CURLOPT_RETURNTRANSFER untuk memberitahu fungsi cURL untuk mengembalikan hasil permintaan sebagai rentetan. Akhir sekali, gunakan fungsi curl_exec untuk melaksanakan sesi, dan gunakan fungsi curl_close untuk menutup sesi. Data yang diperoleh adalah sama seperti contoh sebelumnya.
Data yang kami peroleh biasanya rentetan, dan kami perlu menghuraikannya ke dalam objek atau tatasusunan dalam PHP untuk mendapatkan data yang betul. Biasanya data yang kami perolehi mempunyai format berikut:
Format 3.1 JSON
JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang boleh digunakan oleh pelbagai sokongan bahasa pengaturcaraan. Ia menggunakan pasangan nilai kunci untuk mewakili data, termasuk tatasusunan, objek, rentetan, nombor, dsb.
Kita boleh menggunakan fungsi json_decode yang disediakan oleh PHP untuk menghuraikan rentetan format JSON ke dalam objek atau tatasusunan dalam PHP. Sebagai contoh, kita boleh menggunakan kod berikut untuk menghuraikan rentetan berformat JSON ke dalam tatasusunan PHP:
<?php $data = '[{"id":1,"name":"Alice"},{"id":2,"name":"Bob"}]'; $arr = json_decode($data, true); print_r($arr); ?>
Dalam contoh ini, kami menggunakan fungsi json_decode untuk menghuraikan rentetan berformat JSON ke dalam tatasusunan PHP dan Gunakan fungsi print_r untuk mengeluarkan tatasusunan ke halaman. Ambil perhatian bahawa parameter kedua benar bermakna tatasusunan dikembalikan, bukan objek. Jika parameter ini tidak ditetapkan, objek dikembalikan secara lalai.
Format XML 3.2
XML (Bahasa Penanda Boleh Diperluas) ialah bahasa penanda yang boleh digunakan untuk mewakili dokumen dan data. Ia menggunakan markup untuk menerangkan struktur dan semantik data.
Kami boleh menggunakan sambungan SimpleXML yang disediakan oleh PHP untuk menghuraikan rentetan format XML. Sebagai contoh, kita boleh menggunakan kod berikut untuk menghuraikan rentetan berformat XML ke dalam objek PHP:
<?php $data = '<?xml version="1.0" encoding="UTF-8"?> <users> <user> <id>1</id> <name>Alice</name> </user> <user> <id>2</id> <name>Bob</name> </user> </users>'; $xml = simplexml_load_string($data); print_r($xml); ?>
Dalam contoh ini, kami menggunakan fungsi simplexml_load_string untuk menghuraikan rentetan berformat XML ke dalam objek PHP, dan Gunakan fungsi print_r untuk mengeluarkan objek ke halaman.
Menggunakan PHP untuk mengakses dan menghuraikan data pemulangan API ialah keperluan yang sangat biasa. Kami selalunya perlu mendapatkan data daripada pelayan jauh dan menggunakannya untuk mengemas kini aplikasi tempatan. Artikel ini menerangkan cara menggunakan PHP untuk mengakses API dan menghuraikan data yang dikembalikan. Kami memperkenalkan dua kaedah untuk mendapatkan data: fungsi file_get_contents dan fungsi cURL, dan memperkenalkan dua kaedah menghuraikan format data: format JSON dan format XML. Kaedah ini sangat berguna dalam pembangunan sebenar Kami boleh menggunakannya untuk mengakses pelbagai API terbuka untuk mendapatkan lebih banyak data dan sumber.
Atas ialah kandungan terperinci Gunakan PHP untuk mengakses dan menghuraikan data pulangan API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!