使用composer

时间:2017-11-03 11:42:48

标签: php composer-php

我创建了第一个在GitHub上托管的PHP库。

https://github.com/TBETool/password-generator

使用composer在我的PHP应用程序中安装库时,目录结构就像 供应商

|- tbetool
   |- php-password-generator
      |- src
         |- PasswordGenerator.php
      |- README.md
      |- composer.json

composer.json的内容是

{
    "name": "tbetool/php-password-generator",
    "type": "library",
    "homepage": "http://thebornengineer.com",
    ],
    "require": {
        "php": ">=5.3.0"
    }
}

PasswordGenerator.php

的内容
<?php
namespace TBETool;

/**
 * Class PasswordGenerator
 * @package TBETool
 */
class PasswordGenerator
{
   // content goes here
}

并在/composer.json

的项目编辑器.json中输入
"require": {
    "php": ">=5.6",
    .... other packages....
    "tbetool/php-password-generator": "^1.2"
},

但是当我在我的程序中使用时。

<?php

use TBETool\PasswordGenerator;
class MyClass {
   function myFun() {
       $password = new PasswordGenerator();
   }
}

但是它给出了错误

Class&#39; TBETool \ PasswordGenerator&#39;找不到

设置我的库以使用作曲家时是否有错误?

1 个答案:

答案 0 :(得分:3)

您应该在composer.json文件中使用psr-4自动加载

"autoload": {
    "psr-4": {
        "Namespace\\": "root/path/for/namespace"
    }
}

然后转储您的自动加载composer dump-autoload