[PHP]Pear的使用
1. PEAR的安装, 这里介绍利用PHP5自带的BAT文件安装,需要能上网。
a. 在PHP5目录下找到go-pear.bat,双击安装(保证能上网, 以便下载),BAT自动从网上下载PEAR所需的东西;
b. 按照提示输入一些设置信息,主要是要把局域网的网关加上,如http://192.168.0.1:80/ , pear要用这个地址访问Internet,若无代理服务器则直接回车
c. 然后会提示一些包和PHP绑定,选择Y
2. 安装完PEAR后, 以下示例具体调用:
<?php
require_once 'DB.php';
//$dsn = 'sqlite:///E:/web2/Web_TY/sqlite/data/tydb.db?mode=0666';
$dsn = array(
'phptype' => 'mysql',
'username' => 'root',
'password' => '666666',
'hostspec' => 'localhost',
'database' => 'MyDbName'
);
$options = array(
'debug' => 2,
'portability' => DB_PORTABILITY_ALL
);
$db =& DB::connect($dsn, $options);
if (DB::isError($db)) {
die($db->getMessage());
}
$db->setFetchMode(DB_FETCHMODE_ASSOC);
$res =& $db->query('select * from counter');
if (DB::isError($res)) {
die($res->getMessage());
}
printf("行为:%d,列为:%d<br>", $res->numRows(), $res->numCols());
?>
3. pear使用遇到的问题
a. 测试pear对Sqlite的支持,安装过程中发现,老是提示php_pdo.dll等无法加载,导致无法支持Sqlite的数据操作。更换新的php版本后,加载错误没有了!但在修改php.ini的include_path后(使其包含smarty库的lib目录),发现pear库的DB操作又无法进行了。发现pear库的DB连接设置和php.ini中的include_path有关,如果包含其它路径,将导致pear库不能使用。
b. 测试使用Sqlite Database。发现php无法识别lite.db,怀疑是由于php支持sqlite的版本(2.8.2),比本机器的版本(3.0.3)低,导致无法识别该db。
相关文档:
iconv函数库能够完成各种字符集间的转换,是php编程中不可缺少的基础函数库。
1、下载libiconv函数库http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.9.2.tar.gz;
2、解压缩tar -zxvf libiconv-1.9.2.tar.gz;
3、安装libiconv
#configure --prefix=/usr/local/iconv
#make
......
1. $_GET
:
http://localhost/a.php?a=ok
<?
echo
$_GET['a']; //显示"ok"
?>
2. $_SERVER['QUERY_STRING']
http://localhost/a.php?a=1&b=2&c=3
......
下面介绍几种PHP中判断、循环的几种写法。
最普通的判断:
<?php
if( $args != NULL )
{
call_func($args);
}
?>
对于单行的执行语句,可以写成:
<?php
if( $args != NULL ) call_func($args);
?>
也可以使用引号的方式。
<?php
if( $args != NULL ):
call_func($args);
......
为了脚本程序的兼容性,很多时候脚本的名称都不是固定的。所以我们需要通过动态获取当前脚本的路径、文件名来完成某些功能。
PHP 中,我们可以使用常量 __FILE__ 来获取当前被执行脚本的完整路径。
注意:当包含此变量的脚本被其他脚本include或者require的时候, __FILE__ 将仍然返回此脚本的地址,而不是 ......