简单介绍一下PDO
PDO(PHP Data Object)扩展在PHP5中加入,PHP6中将默认识用PDO连接数据库,所有非PDO扩展将会在PHP6被从扩展中移除。该扩展提供PHP内置类 PDO来对数据库进行访问,不同数据库使用相同的方法名,解决数据库连接不统一的问题。
php6已经默认使用PDO了,看来这是未来的趋势。
PDO同样需要引入外部库,在suse里看一看
linux-k2b4:~ # cd /usr/lib/php5/extensions
linux-k2b4:/usr/lib/php5/extensions # ls
bcmath.so ftp.so ldap.so pcntl.so shmop.so tokenizer.so
bz2.so gd.so mbstring.so pdo_mysql.so snmp.so wddx.so
calendar.so gettext.so mcrypt.so pdo_odbc.so soap.so xmlreader.so
ctype.so gmp.so mysqli.so pdo_pgsql.so sockets.so xmlrpc.so
curl.so hash.so mysql.so pdo.so sqlite.so xmlwriter.so
dbase.so iconv.so ncurses.so pdo_sqlite.so sysvmsg.so xsl.so
dom.so imap.so odbc.so pgsql.so sysvsem.so zend_optimizer
exif.so json.so openssl.so posix.so sysvshm.so zlib.so
看来不用操心,PDO早己加载好了。
所以直接写代码
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<?php
$dbms='mysql'; //数据库类型
$host='localhost'; //数据库主机名
$dbName='bbs'; //使用的数据库
$user='root'; //数据库连接用户名
$pass='123456'; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
echo "数据库连接URL:".$dsn."<br>";
try {
$dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象,就是创建了数据库连接对象$dbh
echo "连接成功<br/>";
$dbh->query("set names 'utf8'");
$dbh->exec("insert into message (id,user,title,content,lastdate) values ('','fantlam','告别2009','迎接新的一年到来',now())");
foreach ($dbh->query('SELECT * from message limit 2,10') as $row) {
echo "标题:".$row[title]."<br>";
echo "用户:".$row[user]."<br>";
echo "内容:".$row[content]."<br>";
echo "日期:".$row[lastdate]."<br><hr>";
}
$dbh = null;
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
?>
OK,一个简单的插入查询已经完成了。
openSUSE之PHP学习之旅 就到此告一段落了,这6节文字,其实涉及到PHP本身是比较少的,因为重点放在了openSUSE下的PHP,所以重要在于在suse下如何去使用PHP。
今天是2009的最后一天,去年的这个时候还在大学的校园倒数新年,而如今已经踏上社会,迎接又一个新年。很快,快到不知道如何表达。
不说那么煽情的话了,新的一年,新的开始,或者应该说持续好的状态,忘掉不快乐的事情,这样才能更有精力奋斗。别了2009,2010年,启程。