如何熟悉PEAR的使用?

PHP

1 基础知识

1.1 什么是Pear

PEAR是可重用的PHP组件框架和系统分发

1.2 Pear的作用

– 为PHP用户提供开源的结构化代码库
– 便于代码的分发和包的维护
– 标准化PHP的编写代码
– 提供PHP的扩展社区库(PECL)
– 通过网站、邮件列表和下载镜像支持PHP/PEAR社区

1.3 Pear的安装

– Pear会随PHP安装时自动安装
– 预编译执行“./configure”命令时,使用选项“–without-pear”则不安装
注:手动安装方法如下,

wget http://pear.php.net/go-pear.phar
php go-pear.phar

1.4 验证Pear的安装

pear

显示如下:

Commands:
build                  Build an Extension From C Source
bundle                 Unpacks a Pecl Package
channel-add            Add a Channel
channel-alias          Specify an alias to a channel name
[...]

注:“[…]”表示省略

1.5 查看Pear的版本

pear -V

显示如下:

PEAR Version: 1.10.5
PHP Version: 7.1.12
Zend Engine Version: 3.1.0
Running on: Linux roundcube.cmdschool.org 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64

2 PEAR的常用操作

2.1 查看PEAR配置

2.1.1 查看全部的PEAR配置

pear config-show

命令显示如下:

Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels     auto_discover    
Default Channel                default_channel  pear.php.net
HTTP Proxy Server Address      http_proxy       
PEAR server [DEPRECATED]       master_server    pear.php.net
Default Channel Mirror         preferred_mirror pear.php.net
Remote Configuration File      remote_config    
PEAR executables directory     bin_dir          /usr/sbin
PEAR documentation directory   doc_dir          /usr/lib64/php/doc
PHP extension directory        ext_dir          /usr/lib64/extensions/no-debug-non-zts-20160303
PEAR directory                 php_dir          /usr/lib64/php
[...]

注:“[…]”表示省略

2.1.2 查看特定的PEAR配置

pear config-get php_dir

命令显示如下:

/usr/lib64/php

3 PEAR的系统操作

3.1 设置PEAR配置

3.1.1 查看默认的配置

pear config-get preferred_state

默认显示如下:

stable

3.1.2 修改PEAR配置

pear config-set preferred_state beta

默认显示如下:

config-set succeeded

3.2 PEAR安装和更新

3.2.1 安装某个包

pear install XML_Util

如果需要强制操作,

pear install -f XML_Util

3.2.2 更新某个包

pear upgrade XML_Util

如果需要强制操作,

pear upgrade -f XML_Util

3.2.3 安装特定的版本

PEAR的包邮以下四种状态,
– stable
– beta
– alpha
– devel
注:默认情况下,PEAR只安装stable的包
如果需要安装其他状态的,则按如下方式操作,

pear install XML_Util-stable
pear install XML_Util-alpha
pear install XML_Util-1.4.2
pear upgrade XML_Util-1.4.3

3.2.4 安装自动解决依赖关系

pear install --onlyreqdeps html_page2
pear install --alldeps html_page2

注:以上任意命令即可,通常使用前者,
–onlyreqdeps,参数代表仅安装所需的依赖项
–alldeps,参数代表安装所有的依赖项

3.2.5 离线安装

pear download XML_Util
pear install XML_Util-1.4.3.tgz

3.3 PEAR包的信息获取

3.2.1 显示包的详细信息

pear info PEAR

显示如下:

About pear.php.net/PEAR-1.10.5
==============================
Release Type           PEAR-style PHP-based Package
Name                   PEAR
Channel                pear.php.net
Summary                PEAR Base System
Description            The PEAR package contains:
[...]

注:“[…]”表示省略

3.2.2 列出包的安装文件

pear list-files PEAR

命令显示如下:

Installed Files For PEAR
========================
Type   Install Path
php    /usr/lib64/php/OS/Guess.php
php    /usr/lib64/php/PEAR/ChannelFile/Parser.php
php    /usr/lib64/php/PEAR/Command/Auth.xml
php    /usr/lib64/php/PEAR/Command/Auth.php
php    /usr/lib64/php/PEAR/Command/Build.xml
[...]

注:“[…]”表示省略

3.2.3 查看已经安装的包

pear list

命令显示如下:

Installed packages, channel pear.php.net:
=========================================
Package          Version State
Archive_Tar      1.4.3   stable
Console_Getopt   1.4.1   stable
PEAR             1.10.5  stable
Structures_Graph 1.1.1   stable
XML_Util         1.4.2   stable
[...]

注:“[…]”表示省略

3.2.4 搜索可用的安装包

pear search xml

显示如下:

WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
Retrieving data...0%
....50%....Matched packages, channel pear.php.net:
=======================================
Package                            Stable/(Latest)  Local
pearweb_channelxml                 1.15.2 (stable)        channel.xml and DTD for pear.php.net channel
Structures_DataGrid_DataSource_XML 0.2.1dev1 (beta)       DataSource driver using XML files
Structures_DataGrid_Renderer_XML   0.1.4dev1 (beta)       Renderer driver that generates a XML string
[...]

注:“[…]”表示省略

3.2.5 查看可安装的PEAR包

pear list-all

命令显示如下:

WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
All packages [Channel pear.php.net]:
====================================
Package                                        Latest     Local
pear/Archive_Tar                               1.4.3      1.4.3  Tar file management class
pear/Archive_Zip                               0.1.2             Zip file archiving management class
[...]

注:“[…]”表示省略

参阅文档:
============

使用手册:
————–
https://pear.php.net/manual/en/

手动安装Pear
—————
https://pear.php.net/manual/en/installation.getting.php

如何查看用户配置:
—————-
https://pear.php.net/manual/en/guide.users.commandline.config.php

线上安装包列表:
————–
http://pecl.php.net/package-stats.php

没有评论

发表回复

PHP
如何基于RHEL 9.x编译安装PHP-FPM 8.x?

1 前言 一个问题,一篇文章,一出故事。 PHP-FPM可以跟Nginx配合使Nginx环境具备运行 …

PHP
如何基于CentOS 7.x编译安装PHP-FPM?

1 前言 一个问题,一篇文章,一出故事。 PHP-FPM可以跟Nginx配合使Nginx环境具备运行 …

Apache
如何部署Oracle Linux 9.x LAMP环境?

1 理论部分 – LAMP是Linux+Apache+MySQL+PHP的简写 &#82 …