如何从PHP获得运行的cli命令?
我有个日志课
class Logger {
public function log($logMessage)
{
$this->writeLog($this->getCommand() . ' : ' . $logMessage);
}
private function getCommand()
{
//How to get the command?
//here var_dump($argv); returns NULL
}
}
由多个命令运行的许多类都使用此记录
try{
//division by zero
$number = 5/0;
}
catch(Exception $ex){
echo 'Got it!';
}
Warning: Division by zero in D:\Sistemim\Server\WebSite\mckportal\test\hatakont.php on line 13
可能的原因是什么?我该怎么修复呢?他使用的是PHP 5.3。7.0.4版本不起作用。
我在Windows7(64位)系统上使用Zend Server CE。
我正在用Zend Framework2.0开发一个网站。在这个网站中,我使用DOMDocument来分析一个外部网站(由网址给出)。
我从Zend Framework1.12和Zend ServerCE4(PHP5.2)开始这个项目。现在我安装了Zend Server CE 5.6.0 (apache2.2,PHP 5.3.14,ZF2-Support)。我使用ZF2.0重新构建我的项目。每件事都可以通过一个函数fine...except来完成。
当我尝试实例化DOMDocument时,我得到了这个错误消息(php-err
我正在创建我的第一个插件完全从头开始。每当我试图向'template-plugin-activate.php‘文件添加名称空间时,我会得到以下错误:
Plugin could not be activated because it triggered a fatal error.
Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($function) must be a valid callback, class "TemplatePluginActivate" not found
当我在共享主机站点上从PHP7.4升级到8时,我找不到这个问题的解决方案。你们谁能帮我吗?
这条信息说:
致命错误:不能声明类XMLParser,因为这个名称已经在第1015行的/home/./commonfunctions.php s.php中使用
1015的代码:
class XMLParser
{
var $filename;
var $xml;
var $data;
//4 lignes to repair php 7
public function __construct()
{
//nothing
}
我有这个自动加载器,一次只能装载一个类。我不知道这是怎么回事。最初,我尽可能多地了解PSR-0,尽管根据,我做了所需的一切,但它只是不会从不同的名称空间加载两个不同的文件,如下所示。
class Autoloader
{
private $pathToClass;
//register the path
function __construct($pathToClass)
{
$this->pathToClass = $pathToClass;
}
//load the file
public functio
PHP中的其他对象是使用new限定符实例化的,比如new Date()等。为什么在实例化PHP中的新数组时,不为new限定符提供Array()?
$array = new Array(); //blows up
$array = Array(); //works as intended
$reflect = new ReflectionClass($this); //works as intended
$reflect = ReflectionClass($this); //blows up
我有一个带有类定义的main.php文件。其他php文件使用此main.php文件
//main.php
<?php
class A{
}
//I want to execute the following statements exactly once
$a = new A();
/*
Some code
*/
?>
我在其他的php文件中使用main.php,比如
//php1.php
<?php
require_once("main.php");
$b = new A();
/*
Some code
*/
?>