我正在使用exec()
来执行一个文件,但文件在一个类中,我读了更多关于argv的信息,但这很令人困惑。我需要让它在课堂上工作。
它说:
php.net上的请注意,$ argv和$ argc需要在尝试在类方法中访问时声明为全局
答案 0 :(得分:23)
这意味着argc / argv不是超级全局 - 它们只能在PHP脚本的顶层上下文中看到,所以......
<?php
$x = $argv[1]; // works
class foo {
function bar() {
echo $argv[1]; // undefined
}
function baz() {
global $argv;
echo $argv[1]; // works
}
}
答案 1 :(得分:0)
我将argv添加为类构造函数的参数
class MyClass
{
protected $args;
public function __construct($args)
{
$this->args = $args;
}
public function foo()
{
$this->args[1]; //access args using $this->args
}
}
$myClass = new MyClass($args);