Cara menggunakan svc php

Diposting pada tanggal 20 January 2021

Ini adalah bagian 1 dari tiga bagian seri untuk membantu Anda mempelajari layanan web RESTful menggunakan PHP. Tutorial ini akan komprehensif, dengan mengikutinya, Anda dapat membangun layanan web Anda sendiri dengan mudah dan menggunakan layanan eksternal. Dalam tutorial ini, kita akan melihat cara membuat layanan web PHP RESTful tanpa menggunakan framework apa pun. Sebagian besar waktu saya lebih suka menulis kode khusus tanpa bergantung pada kerangka kerja karena pendekatan ini memiliki banyak keuntungan.

Cara menggunakan svc php

Terutama, ini akan membawa Anda lebih dalam dalam mempelajari konsep dan Anda dapat menjaga agar semuanya tetap rapi dan efektif. REST atau Representational State Transfer adalah salah satu gaya arsitektur populer yang digunakan untuk mengembangkan layanan web. Gaya arsitektur ini mengandung batasan atau aturan untuk mendesain layanan web yang dapat diakses dari aplikasi eksternal atau aplikasi web. Tujuan dari contoh layanan web PHP RESTful ini Tujuannya adalah untuk membangun layanan web RESTful dalam PHP untuk menyediakan data sumber daya berdasarkan permintaan dengan panggilan jaringan oleh klien eksternal. Selain itu, daftar langkah-langkah berikut diterapkan saat menyesuaikan contoh ini tanpa bergantung pada kerangka kerja apa pun.

Buat URI permintaan dengan pola yang mengikuti prinsip REST. Jadikan layanan RESTful agar mampu menanggapi permintaan dalam format JSON, XML, HTML. Peragakan penggunaan kode Status HTTP berdasarkan skenario yang berbeda. Peragakan penggunaan Request Header. Uji layanan web RESTful menggunakan klien REST. Bagaimana itu dibuat? Array nama seluler adalah data sumber daya yang akan ditargetkan oleh klien REST. Saya memiliki sumber daya ini di kelas domain dari contoh PHP RESTful ini. Untuk mengakses data ini melalui layanan web ini, klien akan mengirimkan permintaan dengan menyetel URI, parameter dengan metode yang dipilih, dan informasi lebih lanjut. Penangan sumber daya layanan web akan menyiapkan respons dalam format JSON, XML atau HTML berdasarkan permintaan. Kemudian, respon akan dikirim ke klien.

Di Internet, saya telah melihat tutorial layanan web dan sebagian besar waktu semuanya berubah menjadi rawan kesalahan atau tidak lengkap. Saya menguji layanan RESTful tersebut menggunakan klien REST dan sebagian besar gagal.

Bersambung ke bagian 2


Dalam tutorial pemrograman PHP kali ini, kita akan membahas tentang kegunaan dari curl php serta bagaimana cara mengimplementasinya.

Pernahkah anda membuat sebuah situs yang menampilkan tentang informasi cuaca atau gempa yang uptodate data-datanya, dimana data-data tersebut kita dapatkan dari databasenya BMKG ?.

Dalam menampilkan data-data update dari BMKG, tentunya kita memanfaatkan teknik web service yang disediakan oleh situs BMKG sendiri yang dapat ditemukan pada url : http://data.bmkg.go.id/ Umumnya web service menggunakan metode pengambilan data/sinkronisasi data melalui XML-RPC, REST, SOAP atau JSON.

Nah sekarang bagaimana seandainya sebuah situs (web) tidak menyediakan web service , sedangkan kita membutuhkan data dari web tersebut untuk kita letakkan dalam website kita. Apakah hal tersebut dimungkinkan ?. Tentunya sangat memungkinkan. Kita dapat memanfaatkan librari cURL PHP.

Apa itu PHP cURL ?

cURL merupakan singkatan dari Client URL. cURL adalah librari untuk mengtransfer data ke berbagai protokol, seperti : http, ftp, tftp dsb. Dengan menggunakan cURL, kita dapat mengirimkan HTTP request dengan menggunakan method GET atau POST.

Fungsi PHP cURL

Dengan menerapkan libari cURL, maka kita dapat mengambil bagian data tertentu untuk dimasukkan ke dalam website kita. Sistem cURL bekerja dengan melakukan request url dari sebuah web client ke web target (cURL Request), kemudian akan web target akan menerima bagian data yang diminta dan akan diterima oleh web client (cURL Receive).

(Gambar.1)

Pada gambar di atas dicontohkan kita kita membutuhkan informasi penerbangan untuk kita tempatkan pada web client

Seandainya data penerbangan berubah, maka data di web client juga ikut berubah.

Nah dari sini, kita sudah dapat memahami apa itu kegunaan fungsi cURL PHP. Seperti yang dijelaskan diatas, cURL kita terapkan kepada web target yang tidak memiliki web service.

Fungsi-fungsi dalam librari PHP cURL

Sebenarnya terdapat sekitar 28 method dalam librari PHP cURL yang dapat kita manfaatkan. Namun disini kita akan menjelaskan beberap diantaranya yang akan kita gunakan dalam contoh kasus nantinya, yaitu:

  • curl_init
  • curl_setopt
  • curl_exec
  • curl_close

#1. curl_init : Method dari curl_init digunakan untuk memulai sebuah session. Nilai balik (return value) dari method ini adalah resource cURL. Dalam method curl_init, kita dapat menggunakan parameter url. Berikut ini adalah contoh dari curl_init tanpa menggunakan parameter url dari sebuah website: t ini adalah curl_init yang mengandung parameter url:

<?php
$session = curl_init(); 
?>

Berikut ini curl_init yang mengandung parameter url:

<?php
$session = curl_init(http://ilmu-detil.blogspot.co.id/); 
?>

#2. curl_setopt : Method dari curl_setopt digunakan untuk memberikan parameter terhadap resource cURL.

Penulisan dari curl_setopt:

bool curl_setopt ( ch , option , value )

Dimana :

  • ch merupakan nilai dari curl_init()
  • option merupakan nilai opsi yang dimulai dengan sintaks CURLOPT_XXX.
  • value merupakan nilai yang dapat berupa : bool, string, array, stream resource. Untuk lebih jelasnya lihat tabel pada PHP MANUAL

Untuk bagian option, nilai opsi yang akan kita gunakan nantinya adalah :

  • CURLOPT_RETURNTRANSFER bertujuan untuk mengembalikan nilai respon dalam bentuk string. Jika kita menggunakan opsi ini, maka pada bagian valuenya harus diset TRUE atau 1.
  • CURLOPT_URL bertujuan untuk mengfetching sebuah website. Sehingga pada bagian value diset dengan sebuah alamat url website

Contoh :

<?php
$session = curl_init();
curl_setopt($session, CURLOPT_URL, "http://ilmu-detil.blogspot.co.id/"); //Setting option url
curl_setopt($session, CURLOPT_RETURNTRANSFER, 1); //setting option Return Transfer
?>

#3.curl_exec dan curl_close : Method curl_exec bertujuan untuk eksekusi session curl. Method ini akan mengembalikan nilai true jika session berhasil dieksekusi. Sedangkan curl_close untuk mengakhiri session.

<?php
$session = curl_init('"http://ilmu-detil.blogspot.co.id/");
$result = curl_exec($session); // will return true or false
curl_close($session);
print $result;
?>

Jika script tersebut dijalankan, maka akan tertampilkan website http://ilmu-detil.blogspot.com

Contoh Menggunakan cURL PHP

Dalam contoh ini kita akan mengimplementasikan penerapan curl dengan menggunakan bantuan fungsi explode, untuk mengambil data tertentu dari sebuah file yang bernama sumber.html dimana tampilannya dalam browser diperlihatkan oleh Gambar.2 dibawah ini :

(Gambar.2)

Script html-nya yang berada pada url : localhost/curl/sumber.htmlsebagai berikut :

<html>
   <head>
       <title>Berita tentan TI</title>
   </head>
   <body>
       <h2>Dunia Teknologi Informasi</h2>
       <p>Perkembangan Smartphone terutama <b>ANDROID</b> berkembang begitu pesat </p>
       <p>Saat ini banyak vendor seperti  <b>SAMSUNG</b> menggunakan sistem operasi tersebut</p>
  </body>
</html>

Dari kode HTML diatas, misalnya kita hanya ingin mengambil kata ANDROID dari url :localhost/curl/sumber.html. Bagaimana caranya ??.

Perhatikan, kata ANDROID berada setelah tag <b>. Disini kita menerapakan function dari curl dan bantuan function explode. Apa itu fucntion explode, silahkan baca tutorial memahami fungsi explode pada PHP.

Karena kata "ANDROID" berada setelah tag<b>, maka kita akan coba buat logika kode program sebagai berikut:

<?php
function bacaURL($url){
     $session = curl_init(); // buat session
     // setting CURL
     curl_setopt($session, CURLOPT_URL, $url);
  curl_setopt($session, CURLOPT_RETURNTRANSFER, 1);
     $hasil = curl_exec($session);
     curl_close($session);
     return $hasil;
}
$sumber =  bacaURL('http://localhost/curl/sumber.html');
$ambil_kata = explode('<b>', $sumber);
echo $ambil_kata[0];
?>

Perhatikan pada baris terakhir yaitu kode : echo $ambil_kata[0] akan menghasilkan output seperti Gambar.3 dibawah ini :


(Gambar.3)

Jika seandainya pada bagian terakhir diganti dengan kode : echo $ambil_kata[1] akan menghasilkan output seperti Gambar.4 dibawah ini

(Gambar.4)

Karena output Gambar.4 mengandung kata "ANDROID", maka harus kita pisah lagi untuk mengambil hanya kata tersebut dari output Gambar.4. Jika kita perhatikan kode HTML diatas, kata "ANDROID" juga berada sebelum closing tag </b>. Sehingga perlu kita pisahkan kata tersebut dengan menggunakan fungsi explode untuk closing tag</b>. Kode lengkapnya sebagai berikut :

<?php
function bacaURL($url){
     $session = curl_init(); // buat session
     // setting CURL
     curl_setopt($session, CURLOPT_URL, $url);
  curl_setopt($session, CURLOPT_RETURNTRANSFER, 1);
     $hasil = curl_exec($session);
     curl_close($session);
     return $hasil;
}
$sumber =  bacaURL('http://localhost/curl/sumber.html');
$ambil_kata = explode('<b>', $sumber);
$ambil_kata_lagi = explode('</b>', $ambil_kata[1]);
echo $ambil_kata_lagi[0];
?>

Maka outputnya akan sesuai dengan keinginan kita yaitu hanya mengambil kata "Android" seperti yang ditunjukkan oleh Gambar.5 dibawah ini :

(Gambar.5)

Apa itu Curl_setopt?

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); Set Option pada cURL yang berfungsi untuk mengembalikan transfer menjadi bentuk String. Script cURL diatas bertujuan untuk menampilkan isi halaman dari URL https://sandbox.

Apa itu PHP cURL?

Curl adalah sebuah program dan library untuk mengirim dan mengambil data melalui URL.