我有一個php命令行工具,我想與世界分享。那麼,實際上我打算寫它,它是一個將設計文檔加載到couchdb中的工具,但這不是重點。發佈一個php命令行工具
無論如何,是否有包裝PHP腳本的最佳做法,以便它們可以分發以便於安裝?我正在考慮沿着好的舊線的東西「./configure &使& make install」,但如何做一個PHP腳本?我讀過關於phar的書,但它似乎主要針對圖書館。那麼有什麼想法?或者其他項目如何做的例子?
我有一個php命令行工具,我想與世界分享。那麼,實際上我打算寫它,它是一個將設計文檔加載到couchdb中的工具,但這不是重點。發佈一個php命令行工具
無論如何,是否有包裝PHP腳本的最佳做法,以便它們可以分發以便於安裝?我正在考慮沿着好的舊線的東西「./configure &使& make install」,但如何做一個PHP腳本?我讀過關於phar的書,但它似乎主要針對圖書館。那麼有什麼想法?或者其他項目如何做的例子?
Composer是如何打包該工具的一個很好的例子,既可以作爲獨立的源代碼集,也可以運行代碼。我安裝了它作爲藥業,現在可以運行在任何地方爲「composer --options args
」
ah yep我剛剛在composer上讀了一些,看起來像.phar腳本實際上可以被製作爲可執行命令。我在這裏閱讀它:http://getcomposer.org/doc/00-intro.md他們建議做「sudo mv composer.phar/usr/local/bin/composer」。我認爲這幾乎是我所追求的。將檢查詳細信息... – 2013-02-18 11:19:34
PHAR正是我正在尋找的東西,它看起來有點不直接,並且沒有特別詳細地記錄如何實際創建PHAR存檔。至少在此刻...... – 2013-02-18 11:39:41
查看Composer的構建過程,也許還有phpunit。還有各種博客帖子或原始信息,位於http://www.php.net/manual/en/intro.phar.php – 2013-02-18 13:22:17
有composer或舊的PEAR仍然廣泛使用,特別是CLI工具。要創建您自己的PEAR頻道,SensioLabs(Symfony傢伙)的Pirum派上用場。
對於進一步閱讀,斯圖爾特赫伯特有一個偉大的series on component based development。
hm ...我知道PEAR和作曲家,但似乎這些工具主要用於將_dependencies_安裝到項目中。我希望能夠創建一些行爲更像命令的東西,以便它可以位於/ bin目錄中,只需鍵入命名即可從命令行調用它。 – 2013-02-18 11:14:31
如果你的組件沒有依賴關係,composer和PEAR仍然有用。特別是PEAR正是你所需要的。即通過PEAR安裝PHPUnit的方式如下:'pear install pear.phpunit.de/PHPUnit' – 2013-02-18 11:20:38
hm ..但是..在安裝PHPUnit之後,我能得到一個我可以運行的命令行工具嗎?哪一個? – 2013-02-18 11:37:34
退房CLIFramework它處理子命令,參數驗證,選項值(多個標誌,可選,默認值)和一個強大的zsh/bash補發生器。
編譯命令也是開箱即用的,可幫助您將控制檯應用程序編譯到phar文件中進行分發。 (phpbrew使用這種方式來分發應用程序世界)
下面是使用的zsh完成發電機(它完成參數和選項)的截屏:
也有使用許多流行的應用程序CLIFramework和GetOptionKit。例如PHPBrew,LazyRecord
我認爲主要的問題是您將不得不讓每個人的計算機運行一個Web服務器,和/或安裝PHP stand-a-one。 – 2013-02-18 10:51:19
@ EM-Creations:您不需要Web服務器來運行PHP腳本。 – Johnsyweb 2013-02-18 11:03:47
@Johnsyweb我說過你需要運行一個web服務器,並且只有一個web服務器會這樣做嗎?號碼 – 2013-02-18 12:20:33