当我启动脚本时,我很难理解如何在命令行中将终端命令传递给$argv[1];
变量。
我想用$argv[1]
中的任何内容设置一个变量,我将在命令行中输入。
示例终端:
php script.php setting
示例代码:
class script
{
public $somesetting = argv[1];
function __construct()
{
}
function main()
while(true)
{
}
}
$script = new script();
答案 0 :(得分:2)
在您的示例中定义构造函数时,您需要在创建对象时将参数传递给构造函数。创建对象时始终会调用构造函数。获取构造函数然后使用引用您的类的$this->
将参数分配给类属性(在使用过程时称为变量)。然后,您可以通过回显访问$test
直接将属性设置为public
。如果该属性设置为protected
或private
,那么您将无法在该类之外访问此属性。
终端:
php test.php hello
<强>的script.php 强>
<?php
class script
{
public $test;
function __construct($arg)
{
$this->test = $arg;
}
}
$script = new script($argv[1]);
echo $script->test . "\r\n";
终端输出
Hello
有些人建议阅读材料以帮助您入门: