<code><form action="index.php" method="post">
<input type="text" name="user"/>
<input type="text" name="password"/>
<input type="submit" value="submit"/>
</form></code><code><?php
$user=trim($_POST['user']);
$password=trim($_POST['password']);
if(!$user || !$password){
echo 'please make sure no empty input';
exit;
}
//write to test.txt
$handle=fopen('test.txt','rb+');
if($handle){
while(($buffer=fgets($handle))!==false){
preg_match('/.*:(.*?)-/',$buffer,$array);
if($array[1]===$user){
echo 'user exist';
exit;
}
fwrite($handle,'$user:'.$user.'------'.'$password:'.$password."\r\n");
fclose($handle);
}
}else{
echo 'fail to open file';
}
?>
</code>写的这个程序是向txt写入文字。可以实现功能,但会有警告。
warning: fgets(): 5 is not a valid stream resource in c:\xampp\htdocs\index.php on line 13
这个警告什么意思。怎么消除?
<code><form action="index.php" method="post">
<input type="text" name="user"/>
<input type="text" name="password"/>
<input type="submit" value="submit"/>
</form></code><code><?php
$user=trim($_POST['user']);
$password=trim($_POST['password']);
if(!$user || !$password){
echo 'please make sure no empty input';
exit;
}
//write to test.txt
$handle=fopen('test.txt','rb+');
if($handle){
while(($buffer=fgets($handle))!==false){
preg_match('/.*:(.*?)-/',$buffer,$array);
if($array[1]===$user){
echo 'user exist';
exit;
}
fwrite($handle,'$user:'.$user.'------'.'$password:'.$password."\r\n");
fclose($handle);
}
}else{
echo 'fail to open file';
}
?>
</code>写的这个程序是向txt写入文字。可以实现功能,但会有警告。
warning: fgets(): 5 is not a valid stream resource in c:\xampp\htdocs\index.php on line 13
这个警告什么意思。怎么消除?
你这个写法就由问题,
把 fgets 写在 while 条件里,第一次读还是正常,但是正常读了之后你在 while 里把 $handle 就 close 了,那循环之后再次判断 while 的时候 fgets 读一个已经关闭的文件资源 当然就报这个警告了……
把 fclose 放在 while 之外
主要考虑到新的架构调整变化较大以及不支持无缝升级这两大原因,官方正式宣布ThinkPHP5.2RC版本的版本号由原来的5.2变更为6.0(这一规划此前在核心成员中曾多次提及),不过PHP版本要求暂时没有变化(依然还是7.1+)。
4125
fclose($handle);
把这个放到while外面,你读了一次就关闭了,当然报错了
立即学习“PHP免费学习笔记(深入)”;
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号