首页 > 编程技术 > php

php中Composer 安装与使用教程

发布时间:2016-11-25 15:28

Composer是PHP中用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer会帮你安装这些依赖的库文件,下面我们一起来看composer安装方法

下午在安装 Laravel 框架过程中,遇到了不少问题,因为 Laravel 的安装依赖于 composer,这里就先介绍一下 composer 的安装方法:

安装方法:

 代码如下 复制代码

#下载
sudo curl -sS https://getcomposer.org/installer | sudo php -d detect_unicode=Off

#更改文件权限
sudo chmod a+x composer.phar 

#移动文件
sudo chmod a+x composer.phar

#更新
sudo composer self-update这样就可以使用 composer 了。
[root@localhost www.111cn.net]# composer
Zend Guard Loader requires Zend Engine API version 220090626.
The Zend Engine API version 220121212 which is installed, is newer.
Contact Zend Technologies at http://www.zend.com/ for a later version of Zend Guard Loader.

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ / __ `__ / __ / __ / ___/ _ / ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
____/____/_/ /_/ /_/ .___/____/____/___/_/
                    /_/
Composer version aa9c257f0efd1a54c93ba95282821a497bc15d75 2014-03-09 15:09:15

Usage:
  [options] command [arguments]

Options:
  --help           -h Display this help message.

下面来给大家分析三种在家linux中给php添加扩展的方法,具体的不说多了我们直接看教程即可,希望例子对各位同学会带来帮助哦。

例子

(1).重新编译一遍PHP(这种方法要编译的东西比较多,因此比较费时),

(2).单独编译FTP扩展然后配置php支持该扩展(这种方式比较省时,因此选用这种方式进行)

(1).解压PHP源码

tar xvf php-5.3.5.tar.bz2

cd php-5.3.5

(2).进入ftp扩展目录编译

cd ext/ftp

(3).运行phpize,为PHP扩展编译做准备

$PREFIX/php/bin/phpize

(4).配置ftp扩展(php-config是获取PHP环境的命令)

./configure --with-php-config=$PREFIX=/php/bin/php-config

(5).编译和安装

make && make install

说明:安装好后会显示扩展安装到的目录,如

$PREFIX/php/lib/php/extensions/no-debug-zts-20090626/

(6).配置php.ini加入:

extension_dir=$PREFIX/lib/php/extensions/no-debug-zts-20090626

extension=ftp.so

(7).重启Apache服务器即可生效

service httpd restart

例子 hpize 命令是用来准备 PHP 外挂模块的编译环境的。下面例子中,外挂模块的源程序位于 extname 目录中:

$ cd extname

$ phpize

$ ./configure (注一)

$ make

$ make install

成功的安装将建立 extname.so 并放置于 PHP 的外挂模块目录中 (预设存放于 /usr/lib/php/modules/ 内) 。

需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此外挂模块。


编译添加扩展

编译PHP所需要的支持
yum install gcc
yum install libxml2-devel curl-devel libjpeg libjpeg-devel libpng-devel freetype-devel.x86_64 mysql-devel
yum install freetype-devel.x86_64  freetype.x86_64
yum install libjpeg libjpeg-devel

下载PHP:wget http://us1.php.net/distributions/php-5.3.28.tar.bz2

tar -jxf php-5.3.28.tar.bz2
cd php-5.3.28

./configure  –prefix=/usr/local/php-5.3.28  –enable-fpm  –with-mysql  –with-zlib  –with-config-file-path=/usr/local/php5.3.28/etc  –with-pdo-mysql   –with-libdir=lib64 –with-gd –with-jpeg-dir=/usr/lib –with-png-dir=/usr/lib –enable-mbstring –enable-gd-native-ttf –enable-xml  –with-freetype-dir –with-curl  –enable-ftp  –enable-zip –with-mcrypt  –enable-mbstring  –enable-json

 

出现失败

checking for alloca… (cached) yes
checking for 8-bit clean memcmp… yes
checking for stdarg.h… (cached) yes
checking for mcrypt support… yes
configure: error: mcrypt.h not found. Please reinstall libmcrypt

rpm -qa | grep libmcrypt
libmcrypt-2.5.7-5.el5
libmcrypt-2.5.8-4.el5.centos

有但是失败,上面的是用yum安装,不对,难道需要去下载包编译??试试呗:

wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz 安装:
tar -zxvf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make
make install

如果我们需要安培Laravel4的话最php最低要求要在php5.3.7版本并且我们需要把mcrypt与openss这两个扩展开启才可以,具体步骤我们参考下文。


前面我们介绍我了 composer安装,这里我们接着来介绍 Laravel框架的安装。

这里我们安装的是laravel 4

项目下载地址:https://github.com/laravel/laravel

安装要求:

1、PHP最低版本:5.3.7

2、支持 mcrypt 扩展

3、支持 openssl 扩展

另外,需要支持 proc_open、proc_get_status函数,自己在安装过程中,因为不支持这2个函数,安装报错失败了

 代码如下 复制代码

[Symfony\Component\Process\Exception\RuntimeException]                                  
The Process class relies on proc_open, which is not available on your PHP installation.

[ErrorException]                                         
proc_get_status() has been disabled for security reasons 

可以通过php配置文件中的disable_functions查看是否支持这2个函数。
进入正题,Laravel安装方法:

1、下载安装包,解压

2、进入解压目录,执行命令

composer install  安装过程中会下载一些框架核心包,慢慢等待即可。

安装完成后通过URL地址访问:

 laravel

这里需要提醒一下:要把域名解析到public目录,才可以正常访问

 代码如下 复制代码

listen       80;
server_name www.111cn.net;
index index.html index.htm index.php default.html default.htm default.php;
root  /home/wwwroot/www.laravel.com/public;

一开始时自己把域名解析到 /home/wwwroot/www.111cn.net 目录,通过域名范围后报404错误

不加--prefer-dist的话安装下来有100多M

composer create-project laravel/laravel . --prefer-dist

如果你没有开启OpenSSL的话我们的不能使用ssl功能,如果我们发邮箱使用ssl加密就无法使用了,但要开启它是非常的简单的,具体如下

XAMPP打开OpenSSL方法:

(1)检查X:/xampp/php/ext目录下是否存在php_openssl.dll文件,如果不存在就先去PHP官网下载放入。
(2)打开X:/xampp/php/php.ini文件,查找extension=php_openssl.dll,如果找到了,去掉前面的分号;

如果没找到就在extension=php_curl.dll的下一行添加如下代码:

extension=php_openssl.dll

然后重启Apache就行了。

为什么不用zend debugger,反而舍本求末用个偏方呢?因zend debugger目前最高只支持到php-5.3.x,php-5.4.x和php-5.5.x搞不定,所以需要xdebug,它就一备胎。

1、下载安装xdebug
1.1 到http://xdebug.org/download.php 下载适合你的PHP版本的xdebug
1.2 复制到php安装目录的ext文件夹,改名为php_xdebug.dll
1.3 配置xdebug

在php.ini尾部添加如下

[xdebug]

zend_extension="php_xdebug.dll"

xdebug.remote_enable         = On
xdebug.remote_host           = "localhost"
xdebug.remote_port           = 9000
xdebug.remote_handler        = "dbgp"
xdebug.auto_trace            = 1
xdebug.collect_includes      = 1
xdebug.collect_params        = 1
xdebug.collect_return        = 1
xdebug.default_enable        = 1
xdebug.collect_assignments   = 1
xdebug.collect_vars          = 1
xdebug.remote_autostart      = 1
xdebug.remote_connect_back   = 1
xdebug.show_local_vars       = 1
xdebug.show_exception_trace  = 0
运行phpinfo();看有xdebug模块信息出来就是搞定了。

2、配置Zend Studio 支持xdebug
这里的配置很重要
选择Zend Studio 的 Window 》 Preference 》 PHP 》Installed Debuggers 双击 Xdebug,弹出对话框如下图

Debug Port 设为跟php.ini中设置的一样(默认是9000)。
Accept remote session(JIT) 选择localhost
允许浏览器访问网站时zend studio自动打开文件开始调试。

选项说明: http://www.111cn.net
off: 关闭浏览器访问时打开调试功能;
localhost: 通过localhost访问网页的时候打开调试。
any:只要访问服务器上的php都打开调试;
prompt:访问服务器上的php时弹出询问是否要调试。

一旦打开zend studio允许xebug调试,所有访问php页面都会进入调试。
我们可以使用easy xdebug火狐插件可在客户端控制是否开启调试。
1、首先php.ini设置
xdebug.remote_autostart = 0
不自动启动调试。
2、安装火狐插件easy xdebug,
安装好该插件后,点击如下图右下角小绿虫后,虫子上面有个小红点,这时候我们访问测试服务器的时候,Zend Studio就回自动弹出调试。

另外,可设置使用xdebug,在zend studio中对直接调试php文档,这里就不多说了。

Views – 61

 

标签:[!--infotagslink--]

您可能感兴趣的文章: