導航:首頁 > 程序命令 > php命令行

php命令行

發布時間:2022-02-03 22:44:48

php 命令行程序如何常駐內存

點擊電腦開始菜單,打開運行窗口,在窗口編輯框里輸入cmd,點擊確定按鈕,打開cmd命令
窗口,然後進入你的工程目錄中的可執行程序文件夾
輸入可執行程序文件名 後面帶上你需要的參數 按Enter鍵 就可以了

cmd命令:如你的可執行程序在D://CP//debug/aa.exe
你需要在命令行窗口輸入d:按Enter鍵進入D盤
cd CP/debug按Enter鍵進入D盤中CP目錄debug子目錄中
輸入aa.exe 2 3 按Enter鍵運行你的程序 結果就會出現
2.000000 to the 3.000000 power = 8

❷ 如何建立PHP的命令行環境

先要把php目錄放到環境變數path下面:我的電腦-》屬性-》高級-》環境變數-》系統變數->Path->編輯

❸ 怎麼在cmd裡面運行php命令

命令行直接執行語句 C:\Php>php -r "echo \"hello world!\""; 或者 命令執行文件 C:\Php>php -f C:/apache/apache2/www/demo/test/index.php。其實你自己在後盾人看看教學視頻,加上自己的理解,多想想就明白了,很簡單的

❹ 使用php命令行無法運行php文件

要麼是你PHP沒有安裝到系統里;要麼你的PHP文件有語法錯誤.
你先用:php -v 命令看下會不會顯示PHP的版本信息,如果不會就是PHP安裝出了錯;
如果沒出錯,你寫個xx.php 文件,裡面的內容為:<?php echo "Hello, world!\n";?> 然後保存,執行php -f xx.php命令,看看是不是正確運行了。

❺ 請教命令行運行php

首先要保證的是PHP.INI是否C盤,然後再看設置全局目錄變數
,設置方法
我的電腦
右鍵
屬性
高級
環境變數,看到PATH
然後把PHP的安裝路徑加在最後面。

❻ PHP怎麼運行DOS命令

你的意思應該是在DOS環境下運行php命令。
首先,將php加入到環境變數path中。
然後,執行:php 你要執行的命令。

❼ 如何在cmd命令行下運行php

把你安裝後的php.exe文件路徑添加到系統PATH下,就行了

❽ 如何獲取PHP命令行參數

如何獲取PHP命令行參數

使用 PHP 開發的同學多少都會接觸過 CLI 命令行。經常會有一些定時任務或者一些腳本直接使用命令行處理會更加的方便,有些時候我們會需要像網頁的 GET 、 POST 一樣為這些命令行腳本提供參數。比如在針對某些日期做統計的腳本,就需要傳遞一個日期給它,這樣我們就統計指定日期的一些數據。這類需求應該非常常見,那麼,我們都是如何來接收這些命令行的參數的呢?今天,就來介紹一下這方面的內容。

$argv 獲得所有空格分隔的參數列表

這個變數估計是大家用得比較多的一個接參變數了。它是 PHP 為我們准備好的一個固定變數,目的就是獲取傳遞給腳本的參數數組。

print_r($argv); // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd // Array // ( // [0] => 如何獲取PHP命令行參數.php // [1] => --a=1 // [2] => -b=2 // [3] => -c=3 // [4] => -d=4 // [5] => --e=5 // [6] => ccc // [7] => ddd // )

這個數組是以參數間隔的空格進行分隔的。第1個元素是當前運行的腳本文件名,也就是說,不管有沒有參數,這個變數一定會有一個 $argv[0] 表示的是當前的腳本文件名。

在日常的開發需求中,其實使用這個變數就已經夠用了。但是這明顯不會是我們今天的主題,大家注意到上面的代碼中我們有很多參數是 -x=xxx 的形式,這種形式的參數是不是和 linux 的命令選項非常像,沒錯,這就是我們今天要重點介紹的:從命令行參數列表中獲取選項。

getopt() 從命令行參數列表中獲取選項

其實就是這樣一個簡單的函數,我們就可以像 Linux 的命令選項一樣獲取指定的命令值。而且不是像 $argv 按空格進行分隔,命令選項函數會將這些命令選項封裝成數組,組成以選項名為鍵,以等號後面的內容為值的數組,更加方便我們的使用。

// php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('a:b:c:d:e:f:')); // Array // ( // [b] => 2 // [c] => 3 // [d] => 4 // )

是不是很神奇,而且非常直觀吧,我們直接就拿到了 b 、 c 、d 的內容並且是格式非常清晰的鍵值數組形式。有同學要問了,a 和 e 呢?還有後面的 ccc 、 ddd 呢?

首先要說明的是,ccc 和 ddd 不是標準的選項參數,也就是說,這個函數接收的內容是以 - 開頭的選項,所以 ccc 和 ddd 不會在這里輸出,並且需要注意的是,非選項參數會中斷選項參數的獲取,在 ccc 之後如果繼續添加 - 開頭的選項也是無法獲取到的,這個我們後面還會看到。而 -- 開頭的選項參數呢?我們直接看下面的長選項功能。

長選項 // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('', ['a:','b:','c:','d:','e:','f:'])); // Array // ( // [a] => 1 // [e] => 5 // )

沒錯,getopt() 函數的第二個參數就是定義這種 -- 開頭的長選項的,而且需要注意的是,第一個參數是字元串類型,第二個長選項參數是數組類型的。那麼我們把它們結合起來,就當然可以獲取到全部的參數信息啦!

// php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('a:b:c:d:e:f:', ['a:','b:','c:','d:','e:','f:'])); // Array // ( // [a] => 1 // [b] => 2 // [c] => 3 // [d] => 4 // [e] => 5 // )

OK,參數選項獲取沒問題了吧,細心的同學肯定又發現了一個問題,這個 getopt() 函數的參數中定義的選項名稱後面為啥都要加個冒號?這就涉及到我們的冒號規則了,請直接往下看。

冒號規則

getopt() 的前兩個參數都支持一套關於選項獲取的規則:

單獨的字元(不接受值) 後面跟隨冒號的字元(此選項需要值) 後面跟隨兩個冒號的字元(此選項的值可選)

我們還是直接通過代碼來看一下。

// 一 // php 如何獲取PHP命令行參數.php --a=1 -b=2 -c=3 -d=4 --e=5 ccc ddd print_r(getopt('abcdef')); // Array // ( // [b] => // [c] => // [d] => // ) // 二 // php 如何獲取PHP命令行參數.php -f print_r(getopt('f::')); // Array // ( // [f] => // ) print_r(getopt('f:')); // Array // ( // ) // 三 // php 如何獲取PHP命令行參數.php -f 22 print_r(getopt('f::')); // Array // ( // [f] => // ) print_r(getopt('f:')); // Array // ( // [f] => 22 // ) // 四 // php 如何獲取PHP命令行參數.php -f=22 print_r(getopt('f::')); // Array // ( // [f] => 22 // ) print_r(getopt('f:')); // Array // ( // [f] => 22 // )

這一段比較長,我們一塊一塊來看。首先是不帶冒號的 abcdef 寫法,返回的數組中都包含鍵,但沒有值,對應上面的規則就是不接受這些參數選項的值,你傳了這些參數選項也是只有鍵名而內容是空的。

第二段是定義了一個參數,但是不給值,這時,雙冒號 :: 會有鍵名,而單冒號 : 則什麼都沒有。

第三段是空格形式的選項值,雙冒號 :: 有鍵名但沒有值,單冒號 : 鍵值正常。

第四段是等號 = 形式的選項值,單雙冒號都正常接收到鍵值。

選項參數中斷

上文中我們提到過參數中斷的問題,就是在選項參數之後如果有一個非選項參數的參數出現,getopt() 就無法再獲取到這個非選項參數後面的所有內容了。

// php 如何獲取PHP命令行參數.php -f=22 aa -b=33 // 選項的解析會終止於找到的第一個非選項,之後的任何東西都會被丟棄。 // Array // ( // [f] => 22 // )

通過這個測試可以清晰的看出後面的 b 選項無法獲取。這時,如果我們想知道選項參數在什麼地方或者因為哪個參數而中斷的話,就可以使用 getopt() 函數的第三個參數了。

// php 如何獲取PHP命令行參數.php -f=22 aa -b=33 $optind = null; getopt('f:b:', [], $optind); echo $optind, PHP_EOL; // 返回中斷位置的索引值,2 echo $argv[$optind], PHP_EOL; // 等同於 $argv 的索引順序,aa

注釋已經寫得很清晰了,第三個參數會回調一個參數選項中斷位置的索引,並且這個索引是和 $argv 的索引順序位置一致的。

總結

說實話,在沒看文檔前真的只知道有一個 $argv 變數可以用來獲取命令行腳本的參數,通過這次學習才發現原來還有一個這么強大的選項參數函數。學習的過程非常簡單,如何運用到真實的項目中才是關鍵所在,加油學習,努力實踐吧!

測試代碼:

https://github.com/zhangyue0503/dev-blog/blob/master/php/202006/source/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96PHP%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%8F%82%E6%95%B0.php

❾ windows下如何實現在命令行下運行PHP文件

window下,假設php安裝目錄為c:\program files\php5\,那麼使用命令窗口進入到該路徑下,敲入php hello.php回車,則會執行當前路徑下的hello.php文件,如果要指向其他路徑下php文件,可以在php 路徑/hello.php ,這種形式稱為CLI模式,我們平時通過瀏覽器看到的那種稱為CGI模式,至於傳遞參數,php文件在cli模式下,直接通過在文件名稱後面接參數,多個參數中間用空格隔開,在php文件裡面是通過兩個變數來獲取參數的,一個是$argv,一個是$argc,前者是傳遞參數的數組,默認第一個為php文件的名稱;後者為$argv的數組個數。
linux下,一般程序安裝都會安裝在/usr/bin/php下面,可以通過man php查看一下,如果有信息說明可以使用,使用方法類似於window下。如果前面這步成立,那麼你可以直接 php php文件 來運行php文件,如果man php沒有信息,則說明當前php執行文件沒有在環境路徑裡面,可以修改環境路徑包含php路徑,也可以類似於window進入php路徑,在執行 php php文件。其他類似於window下。

❿ phpstudy怎麼在命令行中操作php

你要在命令行運行php 跟phpstudy沒多大關系你要把php目錄路徑加入到系統環境變星 在 我的電腦上右擊 選擇屬性 然後選擇高級——》環境變數

選擇Path 點擊下面的編輯,然後把你php的安裝目錄加入到最後面

閱讀全文

與php命令行相關的資料

熱點內容
精品php源碼 瀏覽:956
自己編寫雲伺服器搶紅包 瀏覽:199
java解壓縮文件加密 瀏覽:884
dlink列印伺服器默認地址 瀏覽:349
php休眠函數 瀏覽:369
金蝶如何打開伺服器 瀏覽:762
e4a手游輔助源碼 瀏覽:774
什麼app可以實時直播 瀏覽:103
蘋果13的app閃退什麼原因 瀏覽:772
尾盤選股源碼公式 瀏覽:447
php日期運算 瀏覽:928
天龍八部長歌伺服器什麼時候開的 瀏覽:197
鬼泣4模型在那個文件夾 瀏覽:226
單片機的串列口 瀏覽:55
phpjson轉化為數組 瀏覽:265
pdf導入excel 瀏覽:425
蘋果xsmax信任app在哪裡設置 瀏覽:50
自動外鏈php源碼 瀏覽:242
我的世界新手獎勵箱命令 瀏覽:143
linux更新vim 瀏覽:995