导航:首页 > 编程语言 > phpbz2扩展

phpbz2扩展

发布时间:2023-07-31 10:07:03

A. 如何编译安装php扩展

一开始安装PHP的时候,我们并不知道需要哪些扩展,所以只有等到我们真正用到的时候才想办法去安装。
安装PHP扩展最简单的办法就是
sudo apt-get install php5-xxx

但有的时候并非我们所愿,源里面并没有我们需要的扩展,这时候就需要我们下载源码自己编译安装了。
这篇文章中我将介绍在本地linux平台下编译安装PHP扩展的方法。
现在网站根目录下创建 index.php 打印基本的配置信息,以验证我们是否安装成功。
配置编译环境
我们需要安装一些编译必须的库,还有 php-dev 版本
Ubuntu
sudo apt-get install php5-dev php5-mysql gcc libpcre3-dev

Fedora
sudo yum install php-devel php-mysqlnd gcc libtool

RHEL
sudo yum install php-devel php-mysql gcc libtool

Suse
yast2 -i php5-pear php5-devel php5-mysql gcc

安装扩展
PHP有两种可供安装的扩展:一种是PHP原生的但是默认没有安装的,另一种的第三方开发的扩展。
下面依次介绍两种扩展的安装方法:
安装之前我们需要一份和当前机器上相同版本的PHP源码
cd code
wget http://cn2.php.net/distributions/php-5.5.9.tar.bz2
tar xvjf php-5.5.9.tar.bz2
cd php-5.5.9

前往此处 下载相应的源码包。
在 /ext 目录下面可以看到所有PHP原生的扩展。
安装原生扩展
以 PHP-intl 为例,这是PHP国际化的扩展。
为了安装这个扩展我们需要先安装ICU 库
sudo apt-get install icu-devtools icu-doc libicu-dev libicu52 libicu52-dbg

ICU 安装成功之后进入/ext/intl 目录:
cd intl
phpize
./configure --enable-intl
make
sudo make install

下面解释一下上面的每个命令:
phpize : 是用来扩展php扩展模块的,通过phpize可以建立php的外挂模块
./configure --enable-intl: 配置编译环境,相当于告诉编译器编译PHP源码的时候加上intl这个扩展。
make: 将会把源码编译成 intl.so
make install : 将会把 intl.so 移动到当前安装的 PHP 的扩展目录。
接下来我们要做的就是在php.ini中启用这个扩展,这一步将会在最后给出示例。
安装第三方扩展
将以这个 扩展为例,这个扩展主要实现了PHP识别条形码的功能。
先安装必要的依赖
sudo apt-get install pkg-config

git clone https://github.com/mongodb/mongo-php-driver
cd mongo-php-driver
phpize
./configure
make
sudo make install

将会生成一个文件,将其拷贝到PHP的扩展目录下面。
启用扩展
在php.ini中启用扩展的方式有很多:
直接在php.ini文件中添加 extension=mongo.so,这是最简单直接的方法。
也可以单独建一个ini文件,然后在php.ini中包含这些文件就可以了。
下面介绍一下第二种方法:
cd `/etc/php5/mods-available`

这个目录里可以放新建的ini文件,然后执行
sudo touch mongo.ini
echo "extension=mongo.so" | sudo tee -a mongo.ini
sudo touch intl.ini
echo "extension=intl.so" | sudo tee -a intl.ini

上面的命令将会创建ini文件,并且写如相应的配置信息。
然后执行下面的命令启用扩展即可(需要安装 php5enmod 工具):
sudo php5enmod mongo
sudo php5enmod intl

如果未安装 php5enmod 工具,则需要手动配置:
ln -s /etc/php5/mods-available/mongo.ini /etc/php5/cli/conf.d/mongo.ini
ln -s /etc/php5/mods-available/intl.ini /etc/php5/cli/conf.d/intl.ini
ln -s /etc/php5/mods-available/mongo.ini /etc/php5/fpm/conf.d/mongo.ini
ln -s /etc/php5/mods-available/intl.ini /etc/php5/fpm/conf.d/intl.ini

最后在执行一下重启操作就可以了:
sudo service nginx restart
sudo service php5-fpm restart

B. PHP主要应用那些方面

1、服务端脚本。


这是 PHP 最传统,也是最主要的目标领域。开展这项工作需要具备以下三点:


A、PHP 解析器(CGI 或者服务器模块)、


B、web 服务器、


C、web 浏览器。


需要在运行 web 服务器时,安装并配置 PHP,


然后,可以用 web 浏览器来访问 PHP 程序的输出,即浏览服务端的 PHP 页面。


如果只是实验 PHP 编程,所有的这些都可以运行在自己家里的电脑中。


2、命令行脚本。


可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行它。


通过这种方式,仅仅只需要 PHP 解析器来执丛槐返行。


这种用法对于依赖 cron(Unix 或者 Linux 环境)


或者 Task Scheler(Windows 环境)的日常运行的脚本来说是理想的选择。


这些脚本也可以用来处理简单的文本。


3、编写桌面应用程序。


对于有着图形界面的桌面应用程序来说,PHP 或许不是一种最好的语言,


但是如果用户非常精通 PHP,并且希望在客户端应用程序中使用 PHP 的一些高级特性,


可以利用 PHP-GTK 来编写这些程序。用这种方法,还可以编写跨平台的应用程序。


PHP-GTK 是 PHP 的一个扩展,在通常发布的 PHP 包中并不包含它。


如果对 PHP-GTK 感兴趣,请访问其网站以获取更多信息。


C. Windows系统怎么安装php-zbarcode扩展

写之前先鄙视下利用此开源程序收费的人。

PHP-zbarcode是php识别二维码的扩展。

下面是安装方法,安装前要先安装ImageMagick、zbar.

php-zbarcode 下载地址

安装ImageMagick:
yum install ImageMagick.x86_64 ImageMagick-devel.x86_64
wget http://jaist.dl.sourceforge.NET/project/zbar/zbar/0.10/zbar-0.10.tar.bz2
tar jxvf zbar-0.10.tar.bz2
cd zbar-0.10
./configure –without-gtk –without-qt –without-Python –prefix=/usr/local/zbar
make all
make install
echo “/usr/local/zbar/lib/” >> /etc/ld.so.conf
ldconfig
ln -s /usr/local/zbar/lib/pkgconfig/zbar.pc /usr/lib64/pkgconfig/zbar.pc
wget https://github.com/lgchgt/php-zbarcode/archive/master.zip
unzip master
cd php-zbarcode-master
/xxx/server/php/bin/phpze
/configure –with-php-config=/xxx/server/php/bin/php-config
make
make install
ll /xxx/server/php/lib/php/extensions/no-debug-non-zts-20100525/
添加:extension=zbarcode.so 到php.ini配置文件
运行 : php -i|grep zbar
检查是否安装功能
<?php
/* Create new image object */
$image = new ZBarCodeImage(“1.jpg”);
$scanner = new ZBarCodeScanner();
$barcode = $scanner->scan($image);
print_r($barcode);
/* Loop through possible barcodes */
if (!empty($barcode)) {
foreach ($barcode as $code) {
printf(“Found type %s barcode with data %s\n”, $code[‘type’], $code[‘data’]);
}
}
?>

最后验证结果即可;

D. 在服务器配置PHP的时候需要开通几个扩展,请问这几个扩展对我的网站有何用

网络不误导你 ,我也是网络的,扩展全开都行,不妨碍你用就是了,干嘛非要这么细致的分析每个扩展的作用呢?给你一份快餐,要么你吃了,要么你不吃。你会分析其他的情况吗?
扩展库 说明 注解
php_bz2.dll bzip2 压缩函数库 无
php_calendar.dll 历法转换函数库 自 PHP 4.0.3 起内置
php_cpdf.dll ClibPDF 函数库 无
php_crack.dll 密码破解函数库 无
php_ctype.dll ctype 家族函数库 自 PHP 4.3.0 起内置
php_curl.dll CURL,客户端 URL 库函数库 需要:libeay32.dll,ssleay32.dll(已附带)
php_cybercash.dll 网络现金支付函数库 PHP <= 4.2.0
php_db.dll DBM 函数库 已废弃。用 DBA 替代之(php_dba.dll)
php_dba.dll DBA:数据库(dbm 风格)抽象层函数库 无
php_dbase.dll dBase 函数库 无
php_dbx.dll dbx 函数库
php_domxml.dll DOM XML 函数库 PHP <= 4.2.0 需要:libxml2.dll(已附带),PHP >= 4.3.0 需要:iconv.dll(已附带)
php_dotnet.dll .NET 函数库 PHP <= 4.1.1
php_exif.dll EXIF 函数库 需要 php_mbstring.dll。并且在 php.ini 中,php_exif.dll 必须在 php_mbstring.dll之后加载。
php_fbsql.dll FrontBase 函数库 PHP <= 4.2.0
php_fdf.dll FDF:表单数据格式化函数库 需要:fdftk.dll(已附带)
php_filepro.dll filePro 函数库 只读访问
php_ftp.dll FTP 函数库 自 PHP 4.0.3 起内置
php_gd.dll GD 库图像函数库 在 PHP 4.3.2 中删除。此外注意在 GD1 中不能用真彩色函数,用 php_gd2.dll 替代。
php_gd2.dll GD 库图像函数库 GD2
php_gettext.dll Gettext 函数库 PHP <= 4.2.0 需要 gnu_gettext.dll(已附带),PHP >= 4.2.3 需要 libintl-1.dll,iconv.dll(已附带)。
php_hyperwave.dll HyperWave 函数库 无
php_iconv.dll ICONV 字符集转换 需要:iconv-1.3.dll(已附带),PHP >=4.2.1 需要 iconv.dll
php_ifx.dll Informix 函数库 需要:Informix 库
php_iisfunc.dll IIS 管理函数库 无
php_imap.dll IMAP,POP3 和 NNTP 函数库 无
php_ingres.dll Ingres II 函数库 需要:Ingres II 库
php_interbase.dll InterBase functions 需要:gds32.dll(已附带)
php_java.dll Java 函数库 PHP <= 4.0.6 需要:jvm.dll(已附带)
php_ldap.dll LDAP 函数库 PHP <= 4.2.0 需要 libsasl.dll(已附带),PHP >= 4.3.0 需要 libeay32.dll,ssleay32.dll(已附带)
php_mbstring.dll 多字节字符串函数库 无
php_mcrypt.dll Mcrypt 加密函数库 需要:libmcrypt.dll
php_mhash.dll Mhash 函数库 PHP >= 4.3.0 需要:libmhash.dll(已附带)
php_mime_magic.dll Mimetype 函数库 需要:magic.mime(已附带)
php_ming.dll Ming 函数库(Flash) 无
php_msql.dll mSQL 函数库 需要:msql.dll(已附带)
php_mssql.dll MSSQL 函数库 需要:ntwdblib.dll(已附带)
php_mysql.dll MySQL 函数库 PHP >= 5.0.0 需要 libmysql.dll(已附带)
php_mysqli.dll MySQLi 函数库 PHP >= 5.0.0 需要 libmysql.dll(PHP <= 5.0.2 中是 libmysqli.dll)(已附带)
php_oci8.dll Oracle 8 函数库 需要:Oracle 8.1+ 客户端库
php_openssl.dll OpenSSL 函数库 需要:libeay32.dll(已附带)
php_oracle.dll Oracle 函数库 需要:Oracle 7 客户端库
php_overload.dll 对象重载函数库 自 PHP 4.3.0 起内置
php_pdf.dll PDF 函数库 无
php_pgsql.dll PostgreSQL 函数库 无
php_printer.dll 打印机函数库 无
php_shmop.dll 共享内存函数库 无
php_snmp.dll SNMP 函数库 仅用于 Windows NT!
php_soap.dll SOAP 函数库 PHP >= 5.0.0
php_sockets.dll Socket 函数库 无
php_sybase_ct.dll Sybase 函数库 需要:Sybase 客户端库
php_tidy.dll Tidy 函数库 PHP >= 5.0.0
php_tokenizer.dll Tokenizer 函数库 自 PHP 4.3.0 起内置
php_w32api.dll W32api 函数库 无
php_xmlrpc.dll XML-RPC 函数库 PHP >= 4.2.1 需要 iconv.dll(已附带)
php_xslt.dll XSLT 函数库 PHP <= 4.2.0 需要 sablot.dll,expat.dll(已附带)。PHP >= 4.2.1 需要 sablot.dll,expat.dll,iconv.dll(已附带)。
php_yaz.dll YAZ 函数库 需要:yaz.dll(已附带)
php_zip.dll Zip 文件函数库 只读访问
php_zlib.dll ZLib 压缩函数库 自 PHP 4.3.0 起内置

E. php extension 哪些

php extension就是php的扩展,这个扩展是有很多的,如:

HTTP extension for PHP旨在为PHP应用提供一个方便而强大的功能扩展 。它简化了处理的HTTP网址,日期,重定向,HTTP 头信息,消息,客户的首选语言和字符集,以及提供便捷的数据高速缓存和恢复的方法。它提供了强大的功能,如果和 CURL 一起编译的话将提供更强大的请求处理功能。PHP5或者更新版本提供并行请求处理;

extension_loaded—检查一个扩展是否已经加载,说明extension_loaded()使用内置扩展名称来测试一个扩展是否有效。 大多数内置扩展名称是小写的,但也有扩展使用大写字符。 在 PHP 5 之前,此函数以大小写敏感的方式对比名称;

这里我给你看下小部分的截图,如果你有兴趣可以自行去下载一个php的安装包来看:

F. Docker PHP 安装扩展汇总

FROM php:7.2-fpm

Core, ctype, curl
date, dom
fileinfo, filter, ftp
hash
iconv
json
libxml
mbstring, mysqlnd
openssl
pcre, PDO, pdo_sqlite, Phar, posix
readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard
tokenizer
xml, xmlreader, xmlwriter
zlib

RUN docker-php-ext-install -j$(nproc) bcmath calendar exif gettext
sockets dba mysqli pcntl pdo_mysql shmop sysvmsg sysvsem sysvshm

RUN apt-get update &&
apt-get install -y --no-install-recommends libbz2-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) bz2

RUN apt-get update &&
apt-get install -y --no-install-recommends libenchant-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) enchant

RUN apt-get update &&
apt-get install -y --no-install-recommends libfreetype6-dev libjpeg62-turbo-dev libpng-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ &&
docker-php-ext-install -j$(nproc) gd

RUN apt-get update &&
apt-get install -y --no-install-recommends libgmp-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) gmp

RUN apt-get update &&
apt-get install -y --no-install-recommends libxml2-dev libtidy-dev libxslt1-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) soap wddx xmlrpc tidy xsl

RUN apt-get update &&
apt-get install -y --no-install-recommends libzip-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) zip

RUN apt-get update &&
apt-get install -y --no-install-recommends libsnmp-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) snmp

RUN apt-get update &&
apt-get install -y --no-install-recommends libpq-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) pgsql pdo_pgsql

RUN apt-get update &&
apt-get install -y --no-install-recommends libpspell-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) pspell

RUN apt-get update &&
apt-get install -y --no-install-recommends librecode-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) recode

RUN apt-get update &&
apt-get install -y --no-install-recommends firebird-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) pdo_firebird

RUN apt-get update &&
apt-get install -y --no-install-recommends freetds-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-configure pdo_dblib --with-libdir=lib/x86_64-linux-gnu &&
docker-php-ext-install -j$(nproc) pdo_dblib

RUN apt-get update &&
apt-get install -y --no-install-recommends libldap2-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu &&
docker-php-ext-install -j$(nproc) ldap

RUN apt-get update &&
apt-get install -y --no-install-recommends libc-client-dev libkrb5-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-configure imap --with-kerberos --with-imap-ssl &&
docker-php-ext-install -j$(nproc) imap

RUN apt-get update &&
apt-get install -y --no-install-recommends firebird-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) interbase

RUN apt-get update &&
apt-get install -y --no-install-recommends libicu-dev &&
rm -r /var/lib/apt/lists/* &&
docker-php-ext-install -j$(nproc) intl

RUN apt-get update && \
apt-get install -y --no-install-recommends libmcrypt-dev &&
rm -r /var/lib/apt/lists/* &&
pecl install mcrypt-1.0.1 &&
docker-php-ext-enable mcrypt

RUN export CFLAGS=" PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" &&
apt-get update &&
apt-get install -y --no-install-recommends libmagickwand-dev &&
rm -rf /var/lib/apt/lists/* &&
pecl install imagick-3.4.3 &&
docker-php-ext-enable imagick

RUN apt-get update && \
apt-get install -y --no-install-recommends zlib1g-dev libmemcached-dev &&
rm -r /var/lib/apt/lists/* &&
pecl install memcached &&
docker-php-ext-enable memcached

RUN pecl install redis-4.0.1 && docker-php-ext-enable redis

RUN docker-php-ext-configure opcache --enable-opcache && docker-php-ext-install opcache

RUN set -ex;
docker-php-source extract;
{
echo '# https://github.com/docker-library/php/issues/103#issuecomment-271413933' ;
echo 'AC_DEFUN([PHP_ALWAYS_SHARED],[])dnl';
echo;
cat /usr/src/php/ext/odbc/config.m4;
} > temp.m4;
mv temp.m4 /usr/src/php/ext/odbc/config.m4;
apt-get update;
apt-get install -y --no-install-recommends unixodbc-dev;
rm -rf /var/lib/apt/lists/*;
docker-php-ext-configure odbc --with-unixODBC=shared,/usr;
docker-php-ext-configure pdo_odbc --with-pdo-odbc=unixODBC,/usr;
docker-php-ext-install odbc pdo_odbc;
docker-php-source delete

LABEL Author="Leo"
LABEL Version="1.0.25-fpm"
LABEL Description="PHP FPM 7.2 镜像. All extensions."

阅读全文

与phpbz2扩展相关的资料

热点内容
在健康青岛App挂号怎么查询 浏览:269
普通人上网用的是什么服务器 浏览:451
python安装了找不着 浏览:179
常微分第三版答案pdf 浏览:264
安卓机qq怎么开悬浮窗 浏览:61
备孕三年了怎么缓解压力大 浏览:741
登录阿里云服务器黑屏 浏览:336
匿名元组Python 浏览:723
华为运动健康存储的文件夹 浏览:520
cad正多边形命令 浏览:461
压缩比150能加97油吗 浏览:397
linux新建群在哪个文件夹 浏览:794
韵达快运app在哪里签收 浏览:336
阿里云服务器如何绑定备案域名 浏览:273
单片机用什么键盘好 浏览:25
android动画面试 浏览:309
pdf无法删除 浏览:90
ftp删除文件java 浏览:89
裂变棋牌源码 浏览:87
邀月命令江别鹤退婚 浏览:656