php全集行模式,即php-cli,官方檔案中稱為: CLI SAPI(Server Application Programming Interface,服務端應用編程埠).聽著挺復雜,其實是因為php原本為服務器端的腳本語言,所以引申出這個叫法,
與服務端模式的不同
服務端模式主要有兩種作業方式: 作為web server的模式方式或作為一個cgi可執行程式. 前者,比如作為apach中的一個模塊(如:php5apache2.dll); 后者作為可執行程式,如php-cig. 現在的替代者為php-fpm(FastCGI Process Manager).
看下php-fpm的配置, 在服務器上,放一腳本檔案,內容:
我的官方群點擊此處,
<?php
phpinfo();
?>
輸出:
... Server API FPM/FastCGI Virtual Directory Support disabled Configuration File (php.ini) Path /etc/php7 Loaded Configuration File /etc/php7/php.ini Scan this dir for additional .ini files /etc/php7/conf.d ...
說明組態檔為 /etc/php7/php.ini的/etc/php7/conf.d
再看下cli模式的組態檔. 運行
php -r "phpinfo();"
-r 即 run運行全集意思. 輸出為:
... Server API => Command Line Interface Virtual Directory Support => disabled Configuration File (php.ini) Path => /etc/php/7.0/cli Loaded Configuration File => /etc/php/7.0/cli/php.ini Scan this dir for additional .ini files => /etc/php/7.0/cli/conf.d Additional .ini files parsed => /etc/php/7.0/cli/conf.d/10-opcache.ini, ...
組態檔路徑為: /etc/php/7.0/cli/php.ini 和php-fpm是不同的,
常聽到有人說,php只能作為服務器暫時間腳本,不能作為長時間作業,還有安全配置會影響命令列等,顯然是錯誤的,
其它差異
cli模式,定義了STDIN, STDOUT, STDERR三個常量; 如: $stderr = fopen(‘php://stderr’, ‘w’);
CLI SAPI 不會將當前目錄改為已運行的腳本所在的目錄.
php作為shell腳本
有兩種方法將php腳本作為shell腳本, 如腳本:
hello.php
<?php echo "hello world!"; var_dump($argv); ?>
方法1, php 腳本 引數
~php hello.php -s 'me' hello world array(3) { [0]=> string(9) "hello.php" [1]=> string(2) "-s" [2]=> string(2) "me" }
方法2, 在php檔案頭加
#!/usr/bin/php
然后 chmod u+x hello.php
執行 ./hello.php
hello world
array(1) {
[0]=>
string(11) "./hello.php"
}
以上就是關于php命令列模式介紹的詳細內容
更多學習內容請訪問:
:怎么從一名碼農成為架構師的必看知識點:目錄大全(不定期更新)
推薦學習視頻:
php
基礎:
手把手教你寫留言板系統av78744637
HTML+PHP+Mysql實作網站注冊登錄av78785761
php從零教學支付技術大通關Av78773453
零基礎小白兩小時入門PHP基礎語法av81031138
兩小時熟練PHP基礎語法八大資料型別av81050275
PHP黃金搭檔mysql資料庫兩小時基礎入門av81142395
PHP微信掃碼支付從入門到實戰av83815575
PHP微信支付從入門到實戰教程av83707632
教你如何用laravel開發支付寶介面av77424057
php擴展開發:
PHP擴展開發——cookie與session原理實戰av83825917
php擴展開發——驗證碼開發av83864077
tp:
TP5開發大型ERP核心系統Auth認證組件av80969844
女神老師講解thinkphp6支付大通關av79763622
redis:
redis從入門到精通實戰教程av83679805
9年架構師教你用redis實作高并發限流av94478592
9年架構師教你用redis實作高并發秒殺av94926372
9年架構師講解redis高并發秒殺解決方案av95010886
swoole:
PHP—swoole通往大神修煉之路:av77924246
手把手教你用swoole+websocket實作戶外監控直播(總集篇):av79087951
教你用swoole開發網路游戲:av79264440
PHP高級技術手寫swoole分布式框架:av78383962
PHP高級技術手寫swoole分布式框架(二):av78632435
PHP高級技術手寫swoole分布式框架(三):av78748923
PHP高級技術手寫swoole分布式框架(框架優化):av78856427
PHP高級技術手寫swoole分布式框架(分布式RPC):av79012272
用swoole實作訊息推送:av79874641
swoole+docker+redis主從復制及讀寫分離av78781841
加薪、漲分利器-Swoole-Go協程+Mysql8.0實作高性能資料庫連接池:av93991412
更多學習視頻可以訪問
嗶哩嗶哩 ( ゜- ゜)つロ 乾杯~ Bilibili?space.bilibili.com
希望可以幫助到大家嗷~
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/77618.html
標籤:PHP
上一篇:使用PHP語言判斷閏年與平年
下一篇:java 編程
