如何设置从cmd运行脚本时文件的包含路径


How to set include path of file when running script from cmd

我正在尝试从命令运行php文件。 这里不包括文件。Whrn 我从浏览器运行 php 脚本,它工作得很好,但是当我从 cmd 运行它时,它会为该包含的文件提供错误

PHP代码

require("include/config.php");
include_once('include/classes/dbclass.php');
include_once('include/classes/send_emails.php');

这里假设我将 dbclass.php 文件的代码放入主文件并删除include_once('include/classes/dbclass.php'); 行比没有问题。那么当我们使用cmd运行php脚本时,如何编写包含路径或设置包含文件

您的设置可能有不同的 php.ini 选项文件供 cmdline 和 Web 使用,您可以将正确的include_path添加到cmdline ini文件(在我的例子中为/etc/php5/cli/php.ini),或将其作为命令行参数传递:

php -d include_path=... script.php

我喜欢做:

require dirname(__FILE__) . '/../include/file.php';

这样,所有包含和要求都相对于本地文件。

此外,要求等不是函数。不应使用括号。

您还可以在运行 cmd 窗口中将目录 ("cd") 更改为正在运行的文件的目录。然后它应该得到正确的路径。