【问题标题】:use namespace with composer and silex使用带有 composer 和 silex 的命名空间
【发布时间】:2015-05-26 17:33:42
【问题描述】:

我尝试使用 composer 加载一个类,但找不到该类。

{
    "require": {
        "silex/silex": "~1.2",
        "twig/twig": ">=1.8,<2.0-dev",
        "symfony/twig-bridge": "~2.3",
        "knplabs/knp-menu": "~2.0",
        "symfony/form": "~2.3",
        "symfony/validator": "~2.3",
        "symfony/config": "~2.3",
        "symfony/translation": "~2.3",
        "symfony/locale": "~2.3",
        "symfony/security-csrf": "~2.4",
        "swiftmailer/swiftmailer": ">=4.1.2,<4.2-dev",
        "symfony/security": "~2.6"
    },
    "autoload": {
        "psr-0": {
            "NewDanceStudio\\": "src/"
        }
   }
}

在我的 src 文件夹中,我有这样的结构:

    • 新舞蹈工作室
        • SpikesDAO.php

我的 SpikesDAO 文件:

<?php

namespace NewDanceStudio\DAO;

class SpikesDAO {
    // class code
}

在我的index.php 我有:

use NewDanceStudio\DAO\SpikesDAO;

当我想实例化我的类时,我发现了一个未找到的错误

$sp = new SpikesDAO();

感谢您的帮助。

【问题讨论】:

  • 尝试将"psr-0": { "NewDanceStudio\\": "src/" }改为"psr-0": {"": "src/"}
  • 把你的整个 index.php 放进去

标签: php namespaces composer-php silex


【解决方案1】:

不知道有没有用:

如果我在没有命名空间的情况下包含我的类文件,我可以实例化它。

include __DIR__.'/../src/NewDanceStudio/DAO/SpikesDAO.php';
$p = new SpikesDAO();

更新 1

错误已解决,但我不知道为什么。

我已将 composer.json 更改为:

{
    "require": {
        "silex/silex": "~1.2",
        "twig/twig": ">=1.8,<2.0-dev",
        "symfony/twig-bridge": "~2.3",
        "knplabs/knp-menu": "~2.0",
        "symfony/form": "~2.3",
        "symfony/validator": "~2.3",
        "symfony/config": "~2.3",
        "symfony/translation": "~2.3",
        "symfony/locale": "~2.3",
        "symfony/security-csrf": "~2.4",
        "swiftmailer/swiftmailer": ">=4.1.2,<4.2-dev",
        "symfony/security": "~2.6"
    },
    "autoload": {
        "psr-0": {
            "NewDanceStudio": ["src/"]
        }
   }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-22
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 2016-01-26
    • 2015-08-31
    • 2014-03-17
    • 2018-06-27
    相关资源
    最近更新 更多