Bagaimana saya tahu jika ikal saya berhasil php?

Ini adalah panduan singkat tentang cara memeriksa secara terprogram apakah cURL diaktifkan sebagai ekstensi PHP atau tidak. Dengan memeriksa untuk melihat apakah cURL diaktifkan, Anda dapat membuat kode PHP lebih portabel dengan merancang fallback

Ada tiga pendekatan populer untuk pemeriksaan semacam ini

Apakah curl_init ada sebagai fungsi?

Fungsi curl_init memungkinkan kita menginisialisasi sesi cURL. Jika tidak ada, maka kita dapat menganggap modul cURL belum dimuat

if(function_exists('curl_init') === false){
    //curl_init is not defined
    //cURL not enabled
}

Pada kode di atas, kita menggunakan fungsi PHP function_exists untuk menguji apakah curl_init terdefinisi atau tidak. Jika fungsi tidak ditentukan, kita dapat menganggap bahwa cURL belum diaktifkan dan/atau diinstal

Jika curl_init didefinisikan, maka function_exists akan mengembalikan nilai BENAR boolean

Dapatkan ekstensi yang dimuat

Pendekatan lain adalah dengan menggunakan fungsi PHP get_loaded_extensions, yang akan mengembalikan array dari semua ekstensi/modul PHP yang telah dimuat

//Check if "curl" can be found in the array of loaded extensions.
if(in_array('curl', get_loaded_extensions())){
    //cURL module has been loaded
} else{
    //It has not been loaded. Use a fallback.
}
_

Dalam contoh di atas, kami hanya mencari array yang dikembalikan oleh get_loaded_extensions untuk string “curl”. Jika string "curl" tidak dapat ditemukan di dalam array ini, maka ekstensi belum dimuat dan kita dapat memberi tahu kode kita untuk menggunakan fallback

Namun alternatif lain adalah dengan menggunakan fungsi extension_loaded seperti itu

if(extension_loaded('curl')){
    //the extension has been loaded
}

Anda dapat memilih pendekatan mana yang menurut Anda terbaik, karena semuanya mencapai hal yang sama dan perbedaan kinerjanya dapat diabaikan.

Mundur

Jika Anda mencari fallback untuk digunakan saat modul cURL belum diaktifkan, Anda dapat melihat panduan berikut yang saya tulis

// Buat sumber daya cURL baru

die("Tidak dapat menginisialisasi pegangan cURL");

// Atur URL file untuk diambil melalui cURL

curl_setopt($curl, CURLOPT_URL, "wikipedia. org/");

// Tetapkan string agen pengguna yang berbeda (Googlebot)

// Ikuti pengalihan, jika ada

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

// Gagalkan permintaan cURL jika kode respons = 400 (seperti 404 kesalahan)

curl_setopt($curl, CURLOPT_FAILONERROR, true);

// Mengembalikan kode status

curl_setopt($curl, CURLOPT_RETURNTRANSFER, false);

// Tunggu 10 detik untuk terhubung dan atur 0 untuk menunggu tanpa batas

curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);

// Jalankan permintaan cURL selama maksimal 50 detik

curl_setopt($curl, CURLOPT_TIMEOUT, 50);

// Jangan centang sertifikat SSL

curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, salah);

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, salah);

// Ambil URL dan simpan konten dalam variabel $html

$html = curl_exec($curl);

// Periksa apakah ada kesalahan yang terjadi

gema 'kesalahan cURL. '. curl_error($curl);

// cURL berhasil dieksekusi

print_r(curl_getinfo($curl));

// akan menampilkan isi halaman i. e htmlnya

// tutup sumber daya cURL untuk membebaskan sumber daya sistem

'Klien untuk URL', singkatnya disebut cURL, yang awalnya diucapkan dengan URL dalam huruf besar untuk menekankan bahwa ini berkaitan dengan URL. Ini diucapkan sebagai. "lihat URL. "

cURL adalah perpustakaan PHP dan alat baris perintah (mirip dengan wget) yang memungkinkan Anda mengirim dan menerima file melalui HTTP dan FTP. Anda dapat menggunakan proxy, mengirimkan data melalui koneksi SSL, menyetel cookie, dan bahkan mendapatkan file yang dilindungi oleh login

Peran cURL di PHP

Ini adalah modul PHP yang memungkinkan program PHP menggunakan fungsi curl. Saat dukungan cURL PHP diaktifkan, keluaran fungsi phpinfo() akan menyertakan informasi cURL. Sebelum Anda menulis program PHP dasar pertama Anda, Anda dapat memeriksanya kembali

Program Pascasarjana. Pengembangan Web Stack Penuh

dalam Kolaborasi dengan Caltech CTME Daftar Sekarang

Bagaimana saya tahu jika ikal saya berhasil php?

Sintaks Dasar untuk Info PHP

php_info();

?>

Kegunaan Curl di PHP

  • cURL adalah ekstensi PHP yang memungkinkan Anda menggunakan sintaks URL untuk menerima dan mengirimkan data
  • cURL memudahkan untuk menghubungkan antara berbagai situs web dan domain
  • Memperoleh salinan materi situs web.  
  • Pengajuan formulir secara otomatis, otentikasi dan penggunaan cookie

Fungsi Curl di PHP

  • curl_close — Digunakan untuk menutup sesi cURL
  • curl_error — Ini akan mengembalikan string yang mewakili kesalahan untuk sesi tertentu saat ini
  • curl_exec — Setelah sesi cURL dibuat dan semua opsi sesi telah diatur, fungsi harus diberi nama. Tujuan utamanya adalah menjalankan sesi CURL yang telah ditentukan sebelumnya (diberikan oleh ch)
  • curl_file_create — Untuk membuat CURLFile sebagai objek
  • curl_getinfo — Dapatkan informasi mengenai transfer tertentu
  • curl_init — Untuk menginisialisasi sesi cURL untuk URL
  • curl_multi_close — Tutup satu set pegangan cURL
  • curl_pause — Menjeda dan membatalkan jeda koneksi sesi
  • curl_reset — Atur ulang semua opsi pegangan sesi libcurl
  • curl setopt($ch, option, value) menyetel opsi sesi cURL yang ditentukan oleh parameter ch. Nilai menentukan nilai untuk opsi yang ditentukan, dan opsi menentukan opsi mana yang akan ditetapkan
  • Kembalikan konten halaman dengan curl setopt($ch, CURLOPT RETURNTRANSFER, 1). Jika nilainya nol, tidak ada output yang akan dikembalikan
  • $url diteruskan sebagai parameter ke curl setopt($ch, CURLOPT URL, $url). Ini adalah alamat situs web untuk server tujuan Anda dan URL internet yang Anda cari
  • curl_version — Ini dapat membantu mendapatkan informasi untuk versi cURL

Cara Download Isi Website Remote Menjadi File Lokal Menggunakan cURL di PHP

<. DOCTYPE html>

$url_name = "https. //google. com";

$ch_session = curl_init();

curl_setopt($ch_session, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch_session, CURLOPT_URL, $url);

$result_url = curl_exec($ch_session);

gema $hasil_url;

?>

Dalam contoh di atas, kami mencoba menampilkan informasi URL yang ditugaskan ke google. com Nama URL ini diberikan dengan variabel $url_name. Sesi telah dimulai dengan variabel $ch_session

Keluaran

Bagaimana saya tahu jika ikal saya berhasil php?

Pada contoh di atas, kami mencoba melihat beranda situs web Google. Sesi ditugaskan dengan curl_init(). Metode ini akan menampilkan konten situs web yang ditetapkan ke dalam metode curl_setopt() tertentu. Ini akan disimpan sebagai file html untuk akses jarak jauh

Kursus Baru. Pengembangan Stack Penuh untuk Pemula

Pelajari Git Command, Angular, NodeJS, Maven & Lainnya Daftar Sekarang

Bagaimana saya tahu jika ikal saya berhasil php?

Untuk Mengunduh File dari Situs Jarak Jauh menggunakan cURL di PHP

Jika opsi CURLOPT_ FILE diaktifkan, file jarak jauh dapat diunduh ke server kami. Misalnya, kode berikut mengunduh "peluncuran baru Microsoft" dari situs web perusahaan Microsoft dan menyimpannya ke server kami sebagai microsoft_new_launch. html

Kode sumber

<. DOCTYPE html>

$url_name ="https. //dukung. microsoft. com/en-in/whats-new. html";

$nama_berkas = __DIR__. DIRECTORY_SEPARATOR. "Microsot_new_launch. html";

$handle_session = curl_init();

$fileHandle_name = fopen($file, "w");

curl_setopt_array($handle_session,

Himpunan(

CURLOPT_URL       => $url_name,

CURLOPT_FILE => $fileHandle_name,

)

);

$data_result = curl_exec($handle_session);

curl_close($handle_session);

fclose($fileHandle_name);

?>

Dalam kode sumber di atas, url_name hanyalah lokasi sumber daya asli situs web. Sesi pegangan akan mengelola detail sesi dari lokasi situs web saat ini

Kami menggunakan perintah curl_getinfo untuk mendapatkan informasi lebih lanjut tentang permintaan tersebut. Perintah ini memungkinkan kita mendapatkan informasi teknis penting tentang respons, seperti kode status (200 untuk sukses), dan ukuran file yang diunduh

Kode Sumber untuk Halaman Tanggapan

/*

* vim. ts=4 sw=4 fdm=marker noet tw=78

*/

class curlDownloader

{

pribadi $NamaFilejauh = NULL;

pribadi $ch = NULL;

pribadi $header = larik();

pribadi $tanggapan = NULL;

pribadi $fp = NULL;

pribadi $debug = SALAH;

pribadi $fileSize = 0;

const DEFAULT_FNAME = 'jauh. keluar';

fungsi publik __construct($url)

{

$ini->init($url);

}

fungsi publik toggleDebug()

{

$ini->debug =. $ini->debug;

}

fungsi publik init($url)

{

jika(. $url )

throw new InvalidArgumentException("Butuh URL");

$this->ch = curl_init();

curl_setopt($this->ch, CURLOPT_URL, $url);

curl_setopt($this->ch, CURLOPT_HEADERFUNCTION,

array($ini, 'headerCallback'));

curl_setopt($this->ch, CURLOPT_WRITEFUNCTION,

array($ini, 'bodyCallback'));

}

fungsi publik headerCallback($ch, $string)

{

$len = strlen($string);

jika(. strstr($string, '. ') )

{

$this->respons = trim($string);

return $len;

}

daftar($nama, $nilai) = meledak('. ', $string, 2);

jika( strcasecmp($nama, 'Konten-Disposisi') == 0 )

{

$bagian = meledak(';', $nilai);

jika( hitung($bagian) > 1 )

{

foreach($bagian AS $crumb)

{

jika( strstr($crumb, '=') )

{

daftar($nama, $pval) = meledak('=', $crumb);

$pnama = trim($namap);

jika( strcasecmp($pname, 'nama file') == 0 )

{

// Menggunakan nama dasar untuk mencegah injeksi jalur

// di header berbahaya

$this->remoteFileName = namadasar(

$this->unquote(trim($pval)));

$this->fp = fopen($this->remoteFileName, 'wb');

}

}

}

}

}

$this->headers[$nama] = trim($nilai);

return $len;

}

fungsi publik bodyCallback($ch, $string)

{

jika(. $ini->fp )

{

trigger_error("Tidak ada nama file jarak jauh yang diterima, mencoba default",

E_USER_WARNING);

$this->remoteFileName = diri. DEFAULT_FNAME;

$this->fp = fopen($this->remoteFileName, 'wb');

jika(. $ini->fp )

throw new RuntimeException("Tidak dapat membuka nama file default");

}

$len = fwrite($ini->fp, $string);

$this->fileSize += $len;

return $len;

}

unduhan fungsi publik ()

{

$retval = curl_exec($this->ch);

jika( $this->debug )

var_dump($this->header);

fclose($ini->fp);

curl_close($this->ch);

return $this->fileSize;

}

fungsi publik getFileName() { return $this->remoteFileName;

fungsi pribadi unquote($string)

{

return str_replace(array("'", '"'), '', $string);

}

}

$dl = pengunduh curl baru(

'https. // www. google. com/url?sa=i&url=https%3A%2F%2Fwww. pexels. com%2Fsearch%2Ffree%2520download%2F&psig=AOvVaw3lIh07E0ZIZyNjqNl-JNSd&ust=1638024513705000&source=images&cd=vfe&ved=0CAsQjRxqFwoTCKDNtfuitvQCFQAAAAAdAAAAABAD'

);

$ukuran = $dl->unduh();

printf("Mengunduh %u byte ke %s\n", $size, $dl->getFileName());

?>

Keluaran

Bagaimana saya tahu jika ikal saya berhasil php?

Kursus Pengembang Web Stack Penuh

Untuk menjadi ahli dalam MEAN Stack Lihat Kursus

Bagaimana saya tahu jika ikal saya berhasil php?

Pengiriman Formulir Menggunakan cURL di PHP

Kami telah melihat cara menggunakan metode GET HTTP hingga tahap ini (yang umumnya digunakan untuk menonton dan mengunduh konten). Untuk mengirim formulir, cURL juga dapat menggunakan proses HTTP POST

Sekarang mari kita lihat cara mengirimkan formulir menggunakan cURL. Untuk melakukan ini kita perlu membuat dua file.  

Dalam contoh ini, kita akan membuat dua file berikut - index. php, formulir. php

  • Sertakan skrip cURL di indeks. file php
  • Detail desain formulir terlampir dalam formulir. file php

Bahkan, bentuk. php akan ditempatkan di server jarak jauh (walaupun, sebagai contoh, kedua file dapat ditempatkan di server yang sama). Selain itu, kami akan menggunakan formulir dengan tiga bidang. first_Name, last_Name, dan kirim

Kode desain formulir adalah

$pegangan = curl_init();

$url = "https. //localhost/curl/theForm. php";

$postData = larik(

'firstName' => 'Nyonya',

'lastName'  => 'Gaga',

'kirim'    => 'oke'

);

curl_setopt_array($pegangan,

Himpunan(

CURLOPT_URL => $url,

// Aktifkan respons kiriman

CURLOPT_POST   => benar,

CURLOPT_POSTFIELDS => $postData,

CURLOPT_RETURNTRANSFER => benar,

)

);

$data = curl_exec($pegangan);

curl_close($pegangan);

gema $data;

?>

Dengan bantuan formulir yang disebutkan di atas, kami dapat memperoleh detail nama_depan dan nama_belakang dari orang yang menggunakan formulir tersebut

Rincian yang diperoleh kemudian diteruskan ke formulir respons PHP

Bagaimana saya tahu jika ikal saya berhasil php?

Keluaran

Bagaimana saya tahu jika ikal saya berhasil php?

Untuk Melakukan Otentikasi HTTP Dasar Dengan cURL di PHP

Untuk mengautentikasi dengan cURL, tiga opsi berikut perlu disetel

  • CURLOPT_HTTPAUTH
  • CURLOPT_USERPWD– Di mana kami menentukan nama pengguna dan kata sandi
  • CURLOPT_RETURNTRANSFER

Kode sumber

curl_setopt_array($handle_session,

Himpunan(

CURLOPT_URL => $url_,

CURLOPT_HTTPAUTH => CURLAUTH_ANY,

CURLOPT_USERPWD  => "$nama_pengguna. $p_kata",

CURLOPT_RETURNTRANSFER   => benar,

)

);

?>

Keluaran

Bagaimana saya tahu jika ikal saya berhasil php?

Kursus Gratis. Dasar Pemrograman

Pelajari Dasar Pemrograman Daftar Sekarang

Bagaimana saya tahu jika ikal saya berhasil php?

Cookie digunakan untuk mengenali turis yang kembali dan pengguna yang diautentikasi di situs web. Untuk melakukan ini, cURL menyertakan metode untuk menyimpan cookie

Dua pilihan utama untuk menangani cookie adalah

CURLOPT COOKIEJAR– Menentukan file yang harus digunakan untuk menulis cookie

CURLOPT COOKIEFILE– Variabel ini menentukan file dari mana cookie akan dibaca

Kode sumber

$handle_session = curl_init();

$url_name = "https. //dukung. microsoft. com/en-in/whats-new";

$nama_berkas = __DIR__. DIRECTORY_SEPARATOR. "Kue kering. txt";

curl_setopt_array($handle_session,

Himpunan(

CURLOPT_URL => $nama_url,

CURLOPT_COOKIEFILE => $nama_berkas,

CURLOPT_COOKIEJAR  => $nama_berkas,

CURLOPT_RETURNTRANSFER => benar,

)

);

$data = curl_exec($pegangan);

curl_close($pegangan);

?>

Keluaran

Bagaimana saya tahu jika ikal saya berhasil php?

Tingkatkan karir Anda sebagai MEAN stack developer dengan Full Stack Web Developer - Program MEAN Stack Master. Daftar sekarang

Kesimpulan

Menggunakan ekstensi cURL PHP memberi kita cara cepat dan mudah untuk berkomunikasi dengan situs web lain, khususnya API yang disediakan oleh pihak ketiga. Dalam tutorial berikutnya, kita akan mempelajari cara meminta informasi pribadi atas nama pengguna yang masuk ke situs web kita menggunakan akun GitHub mereka yang akan dicapai dengan bantuan cURL dan Github API.  

Pada artikel ini, Anda belajar tentang cURL dengan sintaks dan contoh. Untuk mendapatkan keahlian dalam pemrograman C, dan untuk lebih meningkatkan prospek karir Anda dan menjadi spesialis dan teknolog full stack, Anda dapat mendaftar untuk program Pengembangan Web Stack Penuh Simplilearn. Untuk pelajar, Simplilearn telah membuat pilihan kursus khusus yang tersedia secara gratis. Bergabunglah dengan Simplelearn untuk kursus gratis di SkillUp dan revolusikan profesi Anda dengan sertifikat, spesialisasi, dan lusinan kursus lainnya.  

Ada pertanyaan untuk kami?

Temukan Program Pascasarjana kami di Kamp Pelatihan Online Pengembangan Web Full Stack di kota-kota teratas

NameDatePlace Program Pascasarjana dalam Full Stack Web Development Cohort dimulai pada 16 Februari 2023,
Batch akhir pekanKota AndaLihat DetailProgram Pascasarjana dalam Pengembangan Web Full Stack, SingapuraCohort dimulai pada 1 Maret 2023,
Batch akhir pekanSingapuraLihat DetailProgram Pascasarjana dalam Pengembangan Web Stack PenuhCohort dimulai pada 15 Maret 2023,
Batch akhir pekanDetail CityView Anda

tentang Penulis

Bagaimana saya tahu jika ikal saya berhasil php?
Ravikiran A S

Ravikiran A S bekerja dengan Simplilearn sebagai Research Analyst. Dia seorang geek yang antusias selalu berburu untuk mempelajari teknologi terbaru. Dia mahir dengan Bahasa Pemrograman Java, Big Data, dan Kerangka Data Besar yang kuat seperti Apache Hadoop dan Apache Spark

Bagaimana cara memeriksa status cURL di php?

IklanKode status Curl PHP . // kode web. aku');

Bagaimana saya tahu jika cURL saya berfungsi?

Buat phpinfo. file php dan simpan. phpinfo; ?> Kemudian buka http. //namadomain/phpinfo. php untuk memeriksa apakah CURL diaktifkan atau tidak .

Bagaimana cara kerja cURL di php?

cURL adalah ekstensi PHP yang memungkinkan Anda menggunakan sintaks URL untuk menerima dan mengirimkan data . cURL memudahkan untuk menghubungkan antara berbagai situs web dan domain. Memperoleh salinan materi situs web. Pengajuan formulir secara otomatis, otentikasi dan penggunaan cookie.

Apa yang dikembalikan php cURL?

Mengembalikan Nilai ¶ . Namun, jika opsi CURLOPT_RETURNTRANSFER disetel, ini akan mengembalikan hasil jika berhasil, salah jika gagal. Fungsi ini dapat mengembalikan Boolean false , tetapi juga dapat mengembalikan nilai non-Boolean yang dievaluasi menjadi false. true on success or false on failure. However, if the CURLOPT_RETURNTRANSFER option is set, it will return the result on success, false on failure. This function may return Boolean false , but may also return a non-Boolean value which evaluates to false .