php-cli简介(不会Shell语言一样用Shell)_PHP教程
1.基础知识
1.1 什么是Shell编程?
在 Unix 中,shell 可不是简单的命令解释器(典型的有 Windows 中的 DOS ),而是一个全功能的编程环境。Shell 是操作系统的一部分,用来与用户打交道,并且可以用来协调各个命令【1】。用Shell编程可以灵活地解决大量重复任务,十分方便。但是,Shell的语法十分怪异(个人意见),不容易记,如果现在熟悉的语言可以用来写shell那就好了——比如php——就可以快速开发Shell程序了(比如我的Preminder的后台程序),于是便有了这篇文章,本文以Linux为例说明php-cli的用法,其它平台的版本类似。
1.2 什么是php-cli?
刚才说到,我们可以用php来开发Shell程序。有的同学可能会问啦:“php不是用来做网页的么?-_-”。是的,php可以用来做动态网页,并且当初php就是为做动态网页而开发的语言,但是理论上php可以用来做任何的程序,甚至是桌面程序,而php-cli是php在命令行运行的支持环境,也就是我们说的可以用来写Shell的环境支持。
php-cli是php Command Line Interface的简称,如同它名字的意思,就是php在命令行运行的接口,区别于在Web服务器上运行的php环境(php-cgi, isapi等)【2】。
也就是说,php不单可以写前台网页,它还可以用来写后台的程序。
2. 执行php-cli脚本
2.1 php-cli的语法
当然是跟php一模一样啦,因为它就是php嘛!只不过一些默认的参数与php-cgi不同,比如运行时间:php-cli默认运行时间是无穷,而网页php默认设置是30s。
2.2 执行php-cli脚本
2.2.1. 直接在终端执行php
kangzj@localhost# php -r 'print_r(get_defined_constants());'2.2.2. 运行php-cli脚本文件
kangzj@localhost# php my_script.php
kangzj@localhost# php -f my_script.php上而说的php文件就是一般的php文件没有什么不同。还有一种方式,就是在文件中指令解释器,就可以直接在终端以”./test.php执行脚本了”,test.php就像下面这样:
#!/usr/bin/php -q
echo "Hello world of PHP CLI!";
?>
补充:php的Shell程序并不一定以php为扩展名,可以以任意扩展名,甚至不要扩展名,只是为了清楚,我才用的php扩展名。
2.2.3. 用Cron执行php-cli脚本
cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业,周期性作业,比如备份数据,Preminder定期查询PR等等,添加的方法:打开/etc/crontab,添加:
0 13 * * * /usr/bin/php -f /home/phpscripts/phpcli.php
4. 结语
如果你会php的话,那么你也会了一种Shell编程语言!
如果你不会php,你去学php,就相当于一下子学会动态网页和Shell两种语言!并且你甚至可以用php来写具有图形界面的应用程序,Dnspod的动态域名客户端中就有一种是用php开发的。
php的易学是出名的,如果你还不会,那是在犹豫什么呢?
另外,再宣传一下我的”Preminder”——PR更新Email提醒服务~~
5. 参考文献
1.Linux Shell简介 : http://www.jb51.net/article/37801.htm
2.PHP Command Line Interface : Mystic Unleashed :http://www.php-cli.com/
3.ch 4.2, php manual : http://www.php.net
PS:Shell命令还是要知道一些的,否则有些功能不太好实现。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











So entfernen Sie doppelte Werte mithilfe regulärer Ausdrücke aus einem PHP-Array: Verwenden Sie den regulären Ausdruck /(.*)(.+)/i, um Duplikate abzugleichen und zu ersetzen. Durchlaufen Sie die Array-Elemente und prüfen Sie mit preg_match, ob Übereinstimmungen vorliegen. Wenn es eine Übereinstimmung gibt, überspringen Sie den Wert; andernfalls fügen Sie ihn einem neuen Array ohne doppelte Werte hinzu.

Nach mehreren Vorabversionen stellte das KDE Plasma-Entwicklungsteam am 28. Februar Version 6.0 seiner Desktop-Umgebung für Linux- und BSD-Systeme vor und nutzte dabei erstmals das Qt6-Framework. KDE Plasma 6.1 verfügt jetzt über eine Reihe neuer Funktionen

Die Hauptunterschiede zwischen PHP-Funktionen und Shell-Funktionen sind Sicherheit (PHP-Funktionen sind sicherer), Zuverlässigkeit (Shell-Funktionen variieren je nach Betriebssystem), Funktionalität (Shell-Funktionen sind leistungsfähiger, aber durch die Shell eingeschränkt) und Leistung (PHP-Funktionen sind normalerweise sicherer). schneller) und Komplexität (Shell-Funktionen sind komplexer). Sie werden beide für Dateisystem-, Prozess- und Befehlsoperationen verwendet, PHP-Funktionen sind jedoch integriert, während Shell-Funktionen über eine externe Shell aufgerufen werden. Daher ist in Szenarien zum Herunterladen von Serverdateien die Funktion file_put_contents() sicherer, während der Befehl wget flexibler ist.

1. Codespezifikationen während der Hintergrundrekonstruktionsarbeit: Während des B-End-Frontend-Entwicklungsprozesses werden Entwickler immer mit dem Problem der wiederholten Entwicklung konfrontiert. Die Elementmodule vieler CRUD-Seiten sind grundsätzlich ähnlich, müssen jedoch dennoch manuell entwickelt werden , und es wird Zeit für die einfache Elementkonstruktion aufgewendet. Dadurch wird die Entwicklungseffizienz der Geschäftsanforderungen verringert. Da die Codierungsstile verschiedener Entwickler gleichzeitig inkonsistent sind, wird es für andere teurer, mit der Iteration zu beginnen. KI ersetzt einfache Gehirnleistung: Durch die kontinuierliche Weiterentwicklung großer KI-Modelle verfügt sie über einfache Verständnisfähigkeiten und kann Sprache in Anweisungen umwandeln. Allgemeine Anweisungen zum Erstellen grundlegender Seiten können die Anforderungen des täglichen grundlegenden Seitenaufbaus erfüllen und die Effizienz der Geschäftsentwicklung in allgemeinen Szenarien verbessern. 2. Linkliste erstellen, Formulare und Details können alle grob in die folgenden Kategorien unterteilt werden:

Produziert von 51CTO Technology Stack (WeChat-ID: blog51cto) Mistral hat sein erstes Codemodell Codestral-22B veröffentlicht! Das Verrückte an diesem Modell ist nicht nur, dass es auf über 80 Programmiersprachen trainiert ist, darunter Swift usw., die von vielen Codemodellen ignoriert werden. Ihre Geschwindigkeiten sind nicht genau gleich. Es ist erforderlich, ein „Publish/Subscribe“-System in der Go-Sprache zu schreiben. Der GPT-4o hier wird ausgegeben und Codestral reicht das Papier so schnell ein, dass es kaum zu erkennen ist! Da das Modell gerade erst auf den Markt gekommen ist, wurde es noch nicht öffentlich getestet. Doch laut Mistral-Verantwortlichen ist Codestral derzeit das leistungsstärkste Open-Source-Codemodell. Freunde, die sich für das Bild interessieren, können zu: - Umarmen Sie das Gesicht: https

1. Mithilfe der Programmierung können verschiedene Software- und Anwendungsprogramme entwickelt werden, darunter Websites, mobile Anwendungen, Spiele und Datenanalysetools. Seine Anwendungsbereiche sind sehr breit gefächert und decken nahezu alle Branchen ab, darunter wissenschaftliche Forschung, Gesundheitswesen, Finanzen, Bildung, Unterhaltung usw. 2. Das Erlernen des Programmierens kann uns helfen, unsere Fähigkeiten zur Problemlösung und unser logisches Denkvermögen zu verbessern. Beim Programmieren müssen wir Probleme analysieren und verstehen, Lösungen finden und diese in Code übersetzen. Diese Denkweise kann unsere analytischen und abstrakten Fähigkeiten fördern und unsere Fähigkeit verbessern, praktische Probleme zu lösen.

C ist eine ideale Sprache für Anfänger zum Erlernen des Programmierens. Zu seinen Vorteilen gehören Effizienz, Vielseitigkeit und Portabilität. Das Erlernen der C-Sprache erfordert: Installieren eines C-Compilers (z. B. MinGW oder Cygwin) Verstehen von Variablen, Datentypen, bedingten Anweisungen und Schleifenanweisungen Schreiben des ersten Programms, das die Hauptfunktion und die printf()-Funktion enthält Üben durch praktische Fälle (z. B. Berechnen von Durchschnittswerten) C-Sprachkenntnisse

Python unterstützt Anfänger bei der Problemlösung. Seine benutzerfreundliche Syntax, umfangreiche Bibliothek und Funktionen wie Variablen, bedingte Anweisungen und Schleifen ermöglichen eine effiziente Codeentwicklung. Von der Datenverwaltung über die Steuerung des Programmablaufs bis hin zur Ausführung wiederkehrender Aufgaben bietet Python
