PHP自动加载composer下载的类库
接上篇文章“composer安装第三方类库”
方法一:
1.使用命令下载类库
composer require monolog/monolog
2.新建index.php文件
<?php require __DIR__.'/vendor/autoload.php'; use Monolog\Logger as Log; $log = new Log('name'); $log->pushHandler(new Monolog\Handler\StreamHandler('app.log',Monolog\Logger::WARNING)); $log->warning('Foo 2.0');
运行php文件
php index.php
打开app.log文件
方法二: 通过自动加载用自己的php文件或第三方类库
1.新建类库或下载第三方类库
在vendor目录下新建或把下载第三方类库放在该目录(以新建类库为例,vendor/acme文件夹下的Foo类文件
)
<?php namespace acme; class Foo { function test() { echo "123456"; } }
命名空间为“acme”,类名为Foo,命名空间尽量为该类库的文件夹对应的名字
2.在根目录下的composer.json文件添加需要加载的类库,在autoload下添加
{ "require": { "monolog/monolog": "^2.1" }, "autoload": { "psr-4":{"acme\\":"vendor/acme/"} } }
"acme\\": "vendor/acme/" (acme为命名空间,vendor/acme 为需要加载的类库对应的文件位置)
3.重新生成vendor/autoload.php文件
添加autoload字段后,使用dump-autoload命令,重新生成vendor/autoload.php文件
composer dump-autoload
4.使用类库
<?php require __DIR__.'/vendor/autoload.php'; use acme\Foo; $d = new Foo; $d->test();
——现在的努力,只为小时候吹过的牛逼! ——