是的,没有函数直接删除文件中的行,修改文件(删除、增加)标准的办法都是新建立文件,逐行进行拷贝,在拷贝中遇到需要修改的就进行修改,那么满足你的功能的标准代码是:
成都创新互联是一家从事企业网站建设、成都网站制作、网站建设、外贸网站建设、行业门户网站建设、网页设计制作的专业的建站公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点上1000家。
删除第二行:
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立临时文件
$f2=fopen($tmp,'w');
$line_no=1;//行号
while(!feof($f1)){
$line=fgets($f1);
if ($line_no!=2) fputs($f2,$line);
$line_no++;
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');
删除内容为“user2”的行:
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立临时文件
$f2=fopen($tmp,'w');
while(!feof($f1)){
$line=fgets($f1);
if ($line!='user2') fputs($f2,$line);
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');
补充:这点举一反三都做不到呀,如果是我的学生我不会来做这个补充的~
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立临时文件
$f2=fopen($tmp,'w');
while(!feof($f1)){
$line=fgets($f1);
list($u,$p)=explode(':',$line);
if ($u!='user2') fputs($f2,$line);
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');
foreach($array as $k=$v){
if($v['goodsId'] == '269'){
unset($array[$k]);
}
}
没有索引,那么可以用like语句来匹配需要删除的行:
delete from upload where id like 'QQ截图%' limit 1
在php中也是执行mysql语句,没有用框架的话,一般上需要先写与mysql套接语句,下面是简单的样例:
?php
$localhost ='localhost';//连接服务器,大多情况下用localhost就可以了,
$user ='root';//mysql登录帐号
$upwd ='123456';//mysql服务器的登陆密码
$db = 'upload';//你的mysql数据库
$charset = 'utf8';//数据库字符集
$conn = mysql_connect($localhost,$user,$upwd) or die(mysql_error().'mysql数据连接失败');
mysql_select_db($db,$conn) or die('数据库不存在'.mysql_error());
mysql_query("set names '$charset'");//设置数据库字符集
mysql_query("delete from upload where id like 'QQ截图%' limit 1");//删除指定条件的数据。