PHP之依赖管理 composer

当你想着鞋垫自己的东西的时候,或者说是整理下过去用过的工具,代码,这时候你就会想到看看github上比较好的代码,这里主要讲PHP的

估计在win上安装composer比较麻烦,或者不好用,但是你想用本地的wamp,那么你可以用虚拟机安装好composer,然后就可以下载你需要的。这里以我正在使用的monolog日志系统

composer require monolog/monolog

这样就会在当前目录生成和下载

vender就是统一的第三方插件的文件夹,composer.json就是配置文件,composer会根据这个去下载第三方,composer.lock会限制composer不会更新你安装过插件的版本,保持你们开发的稳定性

现在来说说monolog,本来就是安装PHP规范写的,文档也写的比较清楚,不过文档看完,你了解了设计思路,但是具体的应用需要自己在使用中慢慢发掘或者专门去测试一下

上代码:

<?php
include "vendor/autoload.php";
use Monolog\logger;
use Monolog\Handler\StreamHandler;
use Monolog\Formatter\LineFormatter;

// include "vendor/monolog/monolog/tests/Monolog/LoggerTest.php";
//设定格式的地方
$dateFormat = "Y-n-j, g:i:a";
$output = "%datetime% >  %channel%.%level_name% > %message% %context% %extra%\n";
$formatter = new LineFormatter($output, $dateFormat);

$log = new Logger(‘myApp‘);
//$log = new Monolog\Logger("name");
$bug_log = new StreamHandler(‘logs/development.log‘,logger::DEBUG);
$bug_log->setFormatter($formatter);
$log->pushHandler($bug_log);
$log->pushHandler(new StreamHandler(‘logs/production.log‘,logger::WARNING));

$error = array(‘12‘=>‘jack‘,‘13‘=>‘marry‘);
$error_string = ‘a error‘;
//$log->debug($error_string);

//$log->warning(‘This is a warning. No caring now‘);

//$log->info(‘Where Can I see you?‘);

// $logtest = new LoggerTest();
// $logtest->testGetName();
$log->addInfo(‘Adding a new user‘, array(‘username‘ => ‘Seldaek‘));

$log->pushProcessor(function ($record) {
    $record[‘extra‘][‘dummy‘] = ‘Hello world!now I cannot see the world outside.‘;

    return $record;
});
//withName是单独复制,换个名字记录
$securityLogger = $log->withName(‘security‘);
$securityLogger->info(‘我涉及到的都是安全问题‘);

针对数据库的写法

上代码

use Monolog\Logger;  
use Monolog\Handler\AbstractProcessingHandler;  
  
class PDOHandler extends AbstractProcessingHandler  
{  
    private $initialized = false;  
    private $pdo;  
    private $statement;  
  
    public function __construct(PDO $pdo, $level = Logger::DEBUG, $bubble = true)  
    {  
        $this->pdo = $pdo;  
        parent::__construct($level, $bubble);  
    }  
  
    protected function write(array $record)  
    {  
        if (!$this->initialized) {  
            $this->initialize();  
        }  
  
        $this->statement->execute(array(  
            ‘channel‘ => $record[‘channel‘],  
            ‘level‘ => $record[‘level‘],  
            ‘message‘ => $record[‘formatted‘],  
            ‘time‘ => $record[‘datetime‘]->format(‘U‘),  
        ));  
    }  
  
    private function initialize()  
    {  
        $this->pdo->exec(  
            ‘CREATE TABLE IF NOT EXISTS monolog ‘  
            .‘(channel VARCHAR(255), level INTEGER, message LONGTEXT, time INTEGER UNSIGNED)‘  
        );  
        $this->statement = $this->pdo->prepare(  
            ‘INSERT INTO monolog (channel, level, message, time) VALUES (:channel, :level, :message, :time)‘  
        );  
  
        $this->initialized = true;  
    }

愿大家一路顺风,更多的学习更多优秀的代码,在使用完,休闲的时候看看人家的思路

愿法界众生,皆得安乐

时间: 2024-10-14 00:33:31

PHP之依赖管理 composer的相关文章

有用PHP依赖管理工具Composer新手教程

PHP依赖管理工具Composer新手教程 Composer 是 PHP 的一个依赖管理工具.它同意你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 依赖管理 Composer 不是一个包管理器. 是的,它涉及 "packages" 和 "libraries",但它在每一个项目的基础上进行管理,在你项目的某个文件夹中(比如 vendor)进行安装. 默认情况下它不会在全局安装不论什么东西.因此,这不过一个依赖管理. 这样的想法并不新奇,Composer 受到

实用PHP依赖管理工具Composer入门教程

PHP依赖管理工具Composer入门教程 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 依赖管理 Composer 不是一个包管理器.是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装.默认情况下它不会在全局安装任何东西.因此,这仅仅是一个依赖管理. 这种想法并不新鲜,Composer 受到了 node

Composer PHP 依赖管理工具

composer 是 PHP 用来管理依赖(dependency)关系的工具.你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件. 依赖管理:Composer 不是一个包管理器.是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装.默认情况下它不会在全局安装任何东西.因此,这仅仅是一个依赖管理. 这种想法并不新鲜,

Php学习之依赖管理工具composer详解

本文和大家分享的主要是php中依赖管理工具composer相关用法,一起来看看吧,希望对大家学习php有所帮助. 什么是依赖管理工具 当你引用某个第三方库时,如果这个库使用到了另外一个或若干个第三方库,再或许另外一个第三方库又有其他的依赖,这样的话手动维护你需要下载安装N个包.用来解决由此产生的问题的工具就叫做依赖管理工具. 有哪些常见的依赖管理工具 Java的maven.gradle,NodeJs的npm,IOS的CocoaPods,PHP的composer 大部分编程语言都会有自己的常用依赖

Composer : php依赖管理工具

原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码混乱 规范不统一 没有后续统一更新等管理 Composer侠应运而生 composer直到如今 已有5个年头了,也是直到今年才有了第一个稳定版本1.0,以前都是alpha版本了,其实composer的发展 也和 PHP-FIG (后续会专门解释的)的发展有很大关系 composer是php新时代的依

Composer PHP依赖管理的新时代

对于现代语言而言,包管理器基本上是标配.Java有Maven,Python有pip,Ruby有gem,Nodejs有npm.PHP的则是PEAR,不过PEAR坑不少: 依赖处理容易出问题 配置非常复杂 难用的命令行接口 好在我们有Composer,PHP依赖管理的利器.它是开源的,使用起来也很简单,提交自己的包也很容易. 安装Composer Composer需要PHP 5.3.2+才能运行. $ curl -sS https://getcomposer.org/installer | php

Composer PHP的一个依赖管理工具

Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. Composer 不是一个包管理器.是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装.默认情况下它不会在全局安装任何东西.因此,这仅仅是一个依赖管理. Composer 将这样为你解决问题: a) 你有一个项目依赖于若干个库. b) 其中一些库依赖于其他库.

Composer:PHP开发者必须了解的依赖管理工具

Composer是一个非常流行的PHP包依赖管理工具,已经取代PEAR包管理器,对于PHP开发者来说掌握Composer是必须的. 对于使用者来说Composer非常的简单,通过简单的一条命令将需要的代码包下载到vendor目录下,然后开发者就可以引入包并使用了. 其中的关键在于你项目定义的composer.json,可以定义项目需要依赖的包(可能有多个),而依赖的包可能又依赖其他的包(这就是组件的好处),这些都不用你烦心,Composer会自动下载你需要的一切,一切在于composer.jso

PHP Composer 依赖管理的用法

1:下载 1.1:方法一: 通过PHP来安装 cd G:\web\es6 curl -sS https://getcomposer.org/installer | php #这个命令会下载composer.phar到当前目录下 1.2:方法二:(下载地址:https://getcomposer.org/download/ ) 通过直接下载composer.phar包到系统某个目录下 (如:D:\composer) 2:安装所要安装(依赖)的插件 2.1 在当前目录下(或者项目文件下)依赖声明(创