PHP和cli有什么关系,运行一个PHP文件报错,该如何解决
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP和cli有什么关系,运行一个PHP文件报错,该如何解决,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2319字,纯文字阅读大概需要4分钟。
内容图文
![PHP和cli有什么关系,运行一个PHP文件报错,该如何解决](/upload/InfoBanner/zyjiaocheng/232/bd016257c8c349feabea126d6c876c02.jpg)
这是报错信息 This example script is written to run under the command line ('cli') version of the PHP interpreter, but you're using the 'apache2handler' version
下面是我运行的php 文件 内容
if (php_sapi_name() != "cli") { //应该是这句话 是不是要配置某个选项 支持 cli啊
print "This example script is written to run under the command line ('cli') version of\n";
print "the PHP interpreter, but you're using the '".php_sapi_name()."' version\n";
exit(1);
}
include "xapian.php";
if ($argc != 2) {
print "Usage: {$argv[0]} PATH_TO_DATABASE\n";
exit(1);
}
try {
// Open the database for update, creating a new database if necessary.
$database = new XapianWritableDatabase($argv[1], Xapian::DB_CREATE_OR_OPEN);
$indexer = new XapianTermGenerator();
$stemmer = new XapianStem("english");
$indexer->set_stemmer($stemmer);
$para = '';
$lines = file("php://stdin");
foreach ($lines as $line) {
$line = rtrim($line);
if ($line == "" && $para != "") {
// We've reached the end of a paragraph, so index it.
$doc = new XapianDocument();
$doc->set_data($para);
$indexer->set_document($doc);
$indexer->index_text($para);
// Add the document to the database.
$database->add_document($doc);
$para = "";
} else {
if ($para != "") {
$para .= " ";
}
$para .= $line;
}
}
// Set the database handle to Null to ensure that it gets closed
// down cleanly or uncommitted changes may be lost.
$database = Null;
} catch (Exception $e) {
print $e->getMessage() . "\n";
exit(1);
}
?>
------解决方案--------------------
command-line interface 命令行界面
用命令行工具运行它 linux命令行,或win的cmd都可以
------解决方案--------------------
類似於shell吧..就是命令行工具了,環境變量什麼的當然就不一樣了。如果你的腳本是web的那就不要在cli下調試,否則多數可能都會出錯。其他的不是很瞭解,cli基本沒有這麼在下面跑過東西
------解决方案--------------------
意思是说,你的这段代码是设计运行在CLI模式下的,但是你现在用的是apache web服务器, 所以这段代码不能运行.
CLI 是命令行模式,例如在winXP 的命令行窗口cmd 里边,php my_script.php 使用php.exe 直接运行php代码,相当于控制台应用。
不是web服务器上运行的。
真需要的话,改成 web服务器上运行的版本就可以。$argv[0] 是从命令行获取的参数,改成用变量设置或$_GET或$_POST 获得
内容总结
以上是互联网集市为您收集整理的PHP和cli有什么关系,运行一个PHP文件报错,该如何解决全部内容,希望文章能够帮你解决PHP和cli有什么关系,运行一个PHP文件报错,该如何解决所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。