【问题标题】:Use composer based library without composer wrapped in class of same name?使用基于作曲家的库,而没有将作曲家包装在同名类中?
【发布时间】:2017-03-31 07:01:34
【问题描述】:

我正在尝试使用 PHPMoney 库,该库包含在我自己的名为 Money 的类中。主应用程序不使用名称空间,我也不想这样做。我已将 PHPMoney 的 src 文件放在一个文件夹中,并试图以它们的 money 类不会干扰我的 money 类的方式包含它们,并且不修改它们的任何代码。我没有使用作曲家。

我正在尝试这个:

require __APP_PATH_VAR.'MoneyPHP/Money.php';
require __APP_PATH_VAR.'MoneyPHP/Currency.php';

use Money\Currency;
use Money\Money;

// Create my own wrapper class called Money
class Money {    

   protected $oPHPMoney;

   public function __construct($Amount,$Currency='USD'){    
      $this->oPHPMoney =new Money\Money($Amount, new Currency($Currency));
   }

}

这告诉我我Cannot declare class Money because the name is already in use

如何在不干扰我的全局命名空间类的情况下包含他们的库?

【问题讨论】:

    标签: php oop namespaces


    【解决方案1】:

    使用别名导入Money\Money

    例如:

    use Money\Money as Money2;
    

    然后:

    public function __construct($amount, $currency='USD'){    
      $this->oPHPMoney =new Money2($amount, new Currency($currency));
    }
    

    【讨论】:

      猜你喜欢
      • 2017-03-13
      • 2018-10-03
      • 1970-01-01
      • 2020-06-13
      • 2019-02-28
      • 2013-05-26
      • 1970-01-01
      • 2021-08-07
      • 2014-02-26
      相关资源
      最近更新 更多