重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.最简单的方法:写两个config.php,用到哪一个调用哪一个。
咸丰ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联建站的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!
2.一个congfig.php,但是调用的时候,可根据需要的数据库判断,输入对应的mysql用户名和密码
这样的。假如你有很多的php页面,在开始学习的时候呢,如果你在每个页面都要连接数据库的话,可以每个页面都写一段连接数据库的代码,然后用mysql_close()关闭,这里说一下,这个数据库的连接,其实呢,它默认情况下是在我们这个脚本页面运行结束以后就自动关闭了,有的程序员不写这个关闭的函数,但是我们约定俗成的都是要写上这个关闭函数的,如果有多个页面,那么每个页面都要写,有资源的还要写上mysql_free_result()来释放资源。
学到后面也可以写一个mysql的类来封装这些方法,到时候只需要在每个页面调用一下就可以了,关闭连接最好写上。
区别是:
PHP采用pdo方式访问数据库时,您不必再使用再为它们封装数据库操作类,只需要使用PDO接口中的方法就可以对各种数据库进行操作。
很多程序员都学习过如何使用 MySQL 或 MySQLi 扩展访问数据库。在 PHP 5.1 中,有一个更好的方法。 PHP Data Objects (PDO) 提供了很多预处理语句的方法,且使用对象将使你的工作更有成效!
PDO 介绍
“PDO – PHP Data Objects – 是一个对多种数据库提供统一操作方法的数据库访问层。”
它并不具备数据库特有的语法,但它将使切换数据库和平台更加容易,多数情况下,只需要简单修改链接字符串。
这并非一篇完整教导如何使用SQL的教程。它重要为那些现今仍在使用 mysql 或 mysqli 扩展的人,帮助他们跃至更具可移植性和强力的 PDO。
数据库支持
此扩展可以使用 PDO 驱动编写过的所有数据库。在本文书写时,下面的数据库支持已经实现:
PDO_DBLIB ( FreeTDS / Microsoft SQL Server / Sybase )
PDO_FIREBIRD ( Firebird/Interbase 6 )
PDO_IBM ( IBM DB2 )
PDO_INFORMIX ( IBM Informix Dynamic Server )
PDO_MYSQL ( MySQL 3.x/4.x/5.x )
PDO_OCI ( Oracle Call Interface )
PDO_ODBC ( ODBC v3 (IBM DB2, unixODBC and win32 ODBC) )
PDO_PGSQL ( PostgreSQL )
PDO_SQLITE ( SQLite 3 and SQLite 2 )
PDO_4D ( 4D )
你的系统不会也不必支持所有上面的驱动;下面是一个快速检查所支持数据库的方法:
print_r(PDO::getAvailableDrivers());
连接
不同数据库的连接方法可能稍有不同,下面是一些较为流行的数据库连接方法。你将注意到,虽然数据库类型不同,前三种数据库的连接方式是相同的——而 SQLite 使用自己的语法。
这里定义2个php匿名对象和数组相互转换的函数,代码如下:
function array2object($array) {
if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key = $val){ $obj-$key = $val; } } else { $obj = $array; } return $obj;}function object2array($object) { if (is_object($object)) { foreach ($object as $key = $value) { $array[$key] = $value; } } else { $array = $object; } return $array;}
用法示例如下:
$array = array('foo' = 'bar','one' = 'two','three' = 'four');$obj = array2object($array);print $obj-one; // output's "two"$arr = object2array($obj);print $arr['foo']; // output's bar