1、直接读文件相比数据库查询效率更胜一筹,而且文中还没算上连接和断开的时间。
成都创新互联公司主营库尔勒网站建设的网络公司,主营网站建设方案,成都app开发,库尔勒h5微信平台小程序开发搭建,库尔勒网站营销推广欢迎库尔勒等地区企业咨询
2、一次读取的内容越大,直接读文件的优势会越明显(读文件时间都是小幅增长,这跟文件存储的连续性和簇大小等有关系),这个结果恰恰跟天缘预料的相反,说明MYSQL对更大文件读取可能又附加了某些操作(两次时间增长了近30%),如果只是单纯的赋值转换应该是差异偏小才对。
3、写文件和INSERT几乎不用测试就可以推测出,数据库效率只会更差。
4、很小的配置文件如果不需要使用到数据库特性,更加适合放到独立文件里存取,无需单独创建数据表或记录,很大的文件比如图片、音乐等采用文件存储更为方便,只把路径或缩略图等索引信息放到数据库里更合理一些。
5、PHP上如果只是读文件,file_get_contents比fopen、fclose更有效率,不包括判断存在这个函数时间会少3秒左右。
6、fetch_row和fetch_object应该是从fetch_array转换而来的,我没看过PHP的源码,单从执行上就可以说明fetch_array效率更高,这跟网上的说法似乎相反。
数组吧,直接把数组转字符串啊
implode() 函数返回由数组元素组合成的字符串。(适合一维数组)
$arr = array('Hello', 'World', 'I', 'love', 'Shanghai');
1 echo implode(" ",$arr);//加空格
the result : Hello World I love Shanghai
2 echo implode(",",$arr);//加逗号
the result : Hello,World,I,love,Shanghai
转换数组为字符串后插入数据库就可以了。
/*定义变量dbh,mysql_connect()函数的意思是连接mysql数据库,"@"的意思是屏蔽报错*/
if(!$dbh){die("error");}
/*die()函数的意思是将括号里的字串送到浏览器并中断PHP程式(Script)。括号里的参数为欲送出的字串。*/
@mysql_select_db("ok",$dbh);
/*选择mysql服务器里的一个数据库,这里选的数据库名为ok*/
$q="SELECT*FROMabc";
/*定义变量q,"SELECT*FROMabc"是一个SQL语句,意思是读取表abc中的数据*/?/!--=========方法一=========--/?$rs=mysql_query($q,$dbh);
/*定义变量rs,函数mysql_query()的意思是:送出query字串供MySQL做相关的处理或者执行.由于php是从右往左执行的,所以,rs的值是服务器运行mysql_query()函数后返回的值*/
if(!$rs){die("Validresult!");}
echo"table";
echo"trtdID/tdtdName/td/tr";
while($row=mysql_fetch_row($rs))echo"trtd$row[0]/tdtd$row[1]/td/tr";
/*定义量变(数组)row,并利用while循环,把数据一一写出来.
函数mysql_fetch_row()的意思是:将查询结果$rs单列拆到阵列变数中.
$row[0]和$row[1]的位置可以换*/
echo"/table";?/!--=========方法二=========--/?$rs=mysql_query($q,$dbh);
while($row=mysql_fetch_object($rs))echo"$row-id$row-name/";
/*id和name可以换位置*/?/!--=========方法三=========--/?$rs=mysql_query($q,$dbh);
/*id和name可以换位置*/?!--=========方法三最快=========--?@mysql_close($dbh);
PHP代码连接数据库通过
sql
语言操作数据去存储更新删除查询数据,就这么简单.
首先,检查你这几个参数是否确实设置正确:
$dbhost
=
'localhost';
//数据库
主机地址
$dbuser
=
'admin';
//mysql
用户名
$dbpass
=
'admin';
//mysql
密码
$dbname
=
'admin';
//mysql库名
另外,mysql_close();
这句已经把数据库连接关闭了因此后面对数据库的操作都不能成功。