PHP 中的fgets() 函数可以实现
fgets() 函数从文件指针中读取一行.
fgets(file,length)
参数说明
file 必需.规定要读取的文件.
详细说明
若失败,则返回 false.
如果碰到 PHP 在读取文件时不能识别 Macintosh 文件的行结束符,可以激活 auto_detect_line_endings 运行时配置选项.
例如:
test.txt 文本内容如下:
Hello, this is a test file.
There are three lines here.
This is the last line.
php
//读取一行
$file = fopen("test.txt","r");
echo fgets($file);
fclose($file);
输出:
//循环读取每一行
while(! feof($file)) {
echo $str = fgets($file). "br /";
//这里可以逐行的写入数据库中
//mysql_query("insert into table(id,contents) values(NULL,'".$str."')");
}
$link?=?mysql_connect('mysql地址/localhost','root','root密码');
mysql_select_db('db1');?//选择一个数据库
$res?=?mysql_query('select?*?from?user');?//?执行sql?语句
$rows?=?array();
while($row?=?mysql_fetch_array($res)){
$rows[]?=?$row;?//?循环?resouce?数据得到数组数据集合
print_r($rows);?//?最后一步输出数据列表
$pdo?=?new?PDO('mysql:host=地址/localhost;dbname=数据库名','root','root密码');
$res?=?$pdo-query('select?*?from?user');
while($row?=?$res-fetch()){
$rows[]?=?$row;
print_r($rows);
所以推荐pdo形式连接数据库,更安全快速.
php 读取数据一般都是在循环读取的时候把数据放入数组里,例如
$link = mysql_connect("数据库地址","用户名","密码");//连接服务器
mysql_select_db("数据库名",$link);//连接数据库
$str = "select * from table1";//查询语句
$result = mysql_query($str,$link);//执行查询
$re_array = new array();//构造数组
while($row = mysql_fetch_array($result))
{
$re_array[] = $row['列名'];//这样可以保存多列数据,根据语句不同,需要在这进行相应修改
如果直接使用file_get_contents来读取文件,那么在文件很大的时候会很占内容,比如这个文件有1GB的时候.
这个时候使用传统的文件操作方式就好的多,因为是查找嘛,逐行读取匹配应该也是可以的,下面是我的一个建议,不知道是否满足你的要求,可以看下:
//
需要查找的内容
$search
=
'bcd';
打开文件
$res
fopen('a.txt',
'r');
while
($line
fgets($res,
根据规则查找
if
(strpos($line,
$search)
===
0)
根据既定规则取得需要的数据
echo
substr($line,
-1);
这里就是你想得到的
break;
关闭文件
fclose($res);
$txt=file('aaa.txt');
echo?$txt[0];
$sql="insert?into?text.tab?(a,b)?values('$txt[0]',?'$txt[1]')";?
if?(mysql_query($sql))?echo?'插入数据库成功';?
else?'插入数据库失败,SQL语句:$sqlbr错误:".mysql_error();?
mysql_close();?
以上就是土嘎嘎小编为大家整理的php按行读取数据库相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!