【问题标题】:php __construct() - please explain what the argument meansphp __construct() - 请解释参数的含义
【发布时间】:2017-08-09 22:03:23
【问题描述】:

我搜索了答案,但找不到。我知道类、对象、构造函数等的概念。

我不明白的是,PHP中的这种语法。

public function __construct(\Magento\Config\Model\ResourceModel\Config $resourceConfig) {
    $this->resourceConfig = $resourceConfig;
}

特别是我不明白构造函数的参数。它来自哪里?来自另一个班级?我应该查找哪个文件 $resourceConfig?

谁能解释一下?先感谢您!

【问题讨论】:

  • 当你实例化类时它来自你,即$x = new ClassName($TheParameterGoesHere);
  • 感谢大家的回答。现在一切都清楚了。

标签: php function oop constructor arguments


【解决方案1】:

这种类型的构造函数有两个目的:

  • 依赖注入:基本上你的类依赖于那个配置对象来工作
  • 类型提示:确保使用精确类型的配置对象进行操作以避免错误(来自您或其他开发人员)

为了简化事情,这个想法是这样的:

$config = new \Magento\Config\Model\ResourceModel\Config();
$obj = new YourClass($config);

【讨论】:

    【解决方案2】:

    访问这里,你可能会发现一些有用的东西 http://inchoo.net/magento/how-to-programmatically-change-magentos-core-config-data/

    【讨论】:

    • 链接 link only answer 可能会被删除。尝试提供一些实质内容,为什么您认为最好的方法是using API
    【解决方案3】:

    是的,它是一个类的实例。即:Magento\Config\Model\ResourceModel命名空间中的类Config

    【讨论】:

      【解决方案4】:

      这里的\Magento\Config\Model\ResourceModel\ConfigConfig在命名空间\Magento\Config\Model\ResourceModel\下的一个对象。

      public function __construct(\Magento\Config\Model\ResourceModel\Config $resourceConfig) {
          $this->resourceConfig = $resourceConfig;
      }
      

      【讨论】:

        猜你喜欢
        • 2022-09-30
        • 2019-01-26
        • 1970-01-01
        • 2015-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-08
        • 1970-01-01
        相关资源
        最近更新 更多