从bash脚本

时间:2015-11-19 05:52:57

标签: php bash

我是Shell脚本的新手。我正在编写一个shell脚本来生成一个php类。我已成功从该脚本生成一个类,但问题是我无法在该类中声明php变量。 例如:

#!/bin/bash

# Make root class
echo "Adding Root class..."
cat > Example.php << EOF
<?php 
require_once (dirname(__FILE__)) . '/../CmlmAPICore.php';

class $1 extends PHPUnit_Framework_TestCase {

    public $coreAPI;
    public $globalPath;
    public $path;
    protected function setUp() {
        $this->coreAPI = new CmlmAPICore();
        $this->globalPath = $GLOBALS['DATA_FOLDER'];
}
}

这些变量未在生成的类中显示。其他一切都很好。 生成的类是:

<?php 
require_once (dirname(__FILE__)) . '/../CmlmAPICore.php';
class Audios extends PHPUnit_Framework_TestCase {

   public ;
    public ;
    public ;

    protected function setUp() {
        ->coreAPI = new CmlmAPICore();
        ->globalPath = ['DATA_FOLDER'];
}
}

=&GT;当我运行shell脚本时,$ 1是我作为类名传递的参数。

我想这不是识别&#34; $&#34;签到这个。 有没有办法这样做?

1 个答案:

答案 0 :(得分:1)

添加&#39; \&#39;之前&#39; $&#39;

public \$coreAPI;
public \$globalPath;
public \$path;
protected function setUp() {
    \$this->coreAPI = new CmlmAPICore();
    \$this->globalPath = \$GLOBALS['DATA_FOLDER'];