首页 » 性感的程序员 » 在PHP中使用包管理器composer安装react/http

在PHP中使用包管理器composer安装react/http

想不想在php中使用类似nodejs的npm的包管理工具?

composer给了我们几乎一毛一样的体验。如何开始?听我娓娓道来:

1.安装Composer

Composer需要PHP 5.3.2+才能运行。

curl -sS https://getcomposer.org/installer | php

这个命令会将composer.phar下载到当前目录。PHAR(PHP 压缩包)是一个压缩格式,可以在命令行下直接运行。

你也可以使用--install-dir选项将Composer安装到指定的目录,例如:

curl -sS https://getcomposer.org/installer | php -- --install-dir=bin

当然也可以进行全局安装:

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

在Mac OS X下可以使用brew安装:

brew tap josegonzalez/homebrew-php  
brew install josegonzalez/php/composer  

不过通常情况下只需将composer.phar的位置加入到PATH环境变量就可以,不一定要全局安装。

2.声明依赖

在项目目录下创建一个composer.json文件,指明依赖,比如,你的项目依赖 monolog:

{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

3.安装依赖

安装依赖非常简单,只需在项目目录下运行:

composer install  

如果没有全局安装的话,则运行:

php composer.phar install  

4.引入包

Composer提供了自动引入的特性,只需在你的项目代码的初始化部分中加入下面一行:

require 'vendor/autoload.php';  

你的当前php文件就自动引入了所有的包。

好的,如果你到这一步了,那么恭喜你已进入composer的世界!接下来,我将创建一个调用composer包里面的非常著名的react/http包来做一个示例。这个包号称是用nodejs来写php。

  1. 先创建一个新的文件夹来放这个项目,假设文件夹名叫app
  2. app下创建一个名为composer.json的文件夹,并写入以下依赖:
 {
    "require": {
    "react/http": "*"
    }
 }

3.在命令行app项目下,运行composer install

4.安装好之后,新建一个app.php文件,作为项目的入口文件,并写入以下代码:

<?php

require 'vendor/autoload.php';

$loop = React\EventLoop\Factory::create();
$socket = new React\Socket\Server($loop);

$http = new React\Http\Server($socket);
$http->on('request', function ($request, $response) {
$response->writeHead(200, array('Content-Type' => 'text/plain'));
$response->end("Hello World!\n");
});

$socket->listen(1337);
$loop->run();

ok,一切皆已完成,现在就用你的浏览器访问:localhost:1337 ,你会发现'hello world'将会射入你眼中。

这是react/http的例子,安装其他的包的方法都一样,下面给一些常用的链接:

1.composer包浏览(官方) https://packagist.org/

2.composer中文站 http://www.phpcomposer.com/

3.composer官网 https://getcomposer.org/

请phper尽快转换思路,来到包管理的新世界吧。