场景:
我的开发环境和生成环境不一致,开发环境是在本地搭建的一套PHP的环境,可以方便的安装和取消扩展;很不幸,生产环境是一个虚拟主机,没有办法添加扩展。
其实,解决方法有两个:
其一,把本地的扩展卸载掉,使用php编写的类库。
其二,使用extension_loaded()做判断,如果当前环境未引入扩展就载入类库文件。
例如,检查是否已经载入sphinx扩展,如果为载入则引入sphinxapi类库文件:
if(!extension_loaded('sphinx'))
{
require ('./includes/sphinxapi.php');
}
备注:
在命令行下,可以使用 php -m 查看安装的扩展。
>php -m
[PHP Modules]
bcmath
calendar
Core
ctype
curl
date
dom
ereg
fileinfo
filter
ftp
gd
gettext
hash
iconv
json
libxml
mbstring
mcrypt
memcache
mhash
mysql
mysqli
mysqlnd
odbc
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
phalcon
Phar
redis
Reflection
session
SimpleXML
soap
sockets
sphinx
SPL
standard
tokenizer
wddx
xdebug
xml
xmlreader
xmlrpc
xmlwriter
yaf
zip
zlib
[Zend Modules]
Xdebug
网友评论