Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Terokai prinsip kerja, persamaan dan perbezaan antara PHP CLI dan CGI

Terokai prinsip kerja, persamaan dan perbezaan antara PHP CLI dan CGI

WBOY
WBOYasal
2024-03-11 12:39:03779semak imbas

探究PHP CLI和CGI的工作原理及异同点

Prinsip kerja dan persamaan dan perbezaan

Dalam pembangunan web, PHP ialah bahasa pengaturcaraan yang biasa digunakan yang boleh berinteraksi dengan pelayan web dengan cara yang berbeza, yang paling biasa adalah melalui PHP CLI (Antaramuka Talian Perintah) dan PHP CGI (Antara Muka Gerbang Biasa). Artikel ini akan meneroka prinsip kerja, persamaan dan perbezaan antara PHP CLI dan CGI, dan menyediakan contoh kod khusus untuk menggambarkan perbezaan antara mereka.

1. Cara PHP CLI berfungsi

PHP CLI ialah penterjemah PHP yang dijalankan di bawah baris arahan. Ia melaksanakan skrip PHP dengan memasukkan parameter pada baris arahan tanpa bergantung pada pelayan web. Prinsip kerja PHP CLI boleh dibahagikan secara ringkas kepada langkah-langkah berikut:

  1. Pengguna memasukkan arahan pada baris arahan untuk memulakan PHP CLI.
  2. Jurubahasa PHP CLI membaca arahan yang dimasukkan oleh pengguna dan memuatkan fail skrip PHP yang ditentukan.
  3. PHP CLI melaksanakan kod dalam fail skrip PHP dan memaparkan output pada baris arahan.

Berikut ialah contoh skrip PHP CLI (test.php):

<?php
echo "Hello, PHP CLI!";

Pengguna boleh menjalankan skrip melalui baris arahan:

php test.php

Hasil pelaksanaan akan memaparkan "Hello, PHP CLI!" .

2. Cara PHP CGI berfungsi

PHP CGI ialah cara untuk berinteraksi dengan skrip PHP dan pelayan web (seperti Apache, Nginx, dll.). Apabila penyemak imbas meminta skrip PHP, pelayan web memanggil jurubahasa PHP untuk melaksanakan skrip PHP dan mengembalikan hasil pelaksanaan kepada penyemak imbas. Prinsip kerja PHP CGI boleh dibahagikan secara ringkas kepada langkah-langkah berikut:

  1. Pelayar menghantar permintaan ke pelayan web, meminta skrip PHP.
  2. Selepas pelayan web menerima permintaan, ia memanggil program PHP CGI untuk melaksanakan skrip PHP.
  3. PHP CGI melaksanakan skrip PHP dan mengembalikan hasil pelaksanaan kepada pelayan web.
  4. Pelayan web mengembalikan hasil pelaksanaan kepada penyemak imbas untuk paparan.

Berikut ialah contoh skrip PHP CGI mudah (test.php):

<?php
echo "Hello, PHP CGI!";

Pengguna boleh meminta skrip melalui penyemak imbas, dan pelayan web akan memanggil jurubahasa PHP untuk melaksanakan skrip dan mengembalikan hasilnya kepada pelayar untuk paparan.

3. Persamaan dan perbezaan antara PHP CLI dan PHP CGI

  1. Kaedah kerja adalah berbeza: PHP CLI menjalankan skrip PHP melalui baris arahan dan tidak bergantung pada pelayan web PHP CGI memanggil jurubahasa PHP melalui pelayan web untuk melaksanakan skrip PHP Berinteraksi dengan pelayan web.
  2. Persekitaran operasi yang berbeza: PHP CLI sesuai untuk pelaksanaan skrip PHP dalam persekitaran baris arahan PHP CGI sesuai untuk pelaksanaan skrip PHP dalam persekitaran pelayan web.
  3. Kaedah output adalah berbeza: hasil output PHP CLI dipaparkan dalam baris arahan; hasil output PHP CGI dipaparkan dalam penyemak imbas.
  4. Kaedah panggilan adalah berbeza: PHP CLI dipanggil dan dilaksanakan melalui baris arahan PHP CGI dipanggil dan dilaksanakan melalui pelayan web.

4. Contoh Kod

Berikut ialah contoh komprehensif, termasuk skrip (index.php) yang boleh dijalankan melalui PHP CLI dan PHP CGI:

<?php
if (PHP_SAPI == 'cli') {
    // PHP CLI环境
    echo "Hello, PHP CLI!";
} else {
    // PHP CGI环境
    echo "Hello, PHP CGI!";
}

Pengguna boleh menjalankan ini dalam baris arahan melalui arahan berikut Skrip:

php index.php

Atau minta skrip melalui pelayar web, pelayan web akan memanggil jurubahasa PHP untuk melaksanakan skrip dan mengembalikan hasilnya.

Melalui pengenalan di atas, kita dapat melihat perbezaan prinsip kerja dan kaedah penggunaan PHP CLI dan PHP CGI Pembangun boleh memilih kaedah yang sesuai untuk melaksanakan skrip PHP mengikut keperluan tertentu.

Atas ialah kandungan terperinci Terokai prinsip kerja, persamaan dan perbezaan antara PHP CLI dan CGI. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn