使用Fwrite编辑PHP文件,使用另一个php文件
我的上一个问题没有得到很好的解释.
我在这里要做的是将数据插入到PHP文件中,在另一个.php文件上使用fwrite功能. 为了保持这个简单,我将我想要的数据标记为file.php,而我正在使用fwrite执行的那个是edit.php 现在,我得到了写作的东西,我的问题是,我需要INSERT该数据,在file.php关闭php标签之前. 我尝试做的是,删除关闭的php标签,写入数据,然后重写标签. 这是我的源代码: <?php $rows = file("file.php"); $tagremove = "?>"; foreach($rows as $key => $row) { if(preg_match("/($tagremove)/",$row)) { unset($rows[$key]); } } file_put_contents("file.php",implode("",$rows)); $User = $_GET["user"]; $File = "file.php"; $Handle = fopen($File,"a"); fwrite($Handle,""); fwrite($Handle,$User); fwrite($Handle,"rn"); fwrite($Handle,"?>"); print "Data Written"; fclose($Handle); ?> 当我在Edit.php上运行它时,它会将该数据插入到文件中,但它只写入第一行,并替换已存在的任何内容. (在我的情况下,它是开放的php标签).我不知道我做错了什么,或者是否有其他方法可以做到这一点,但任何帮助都会受到赞赏. 编辑:这是一个聊天客户端. 我有一个文件,它将一条消息发送到客户端随后读取的.txt文件中. 该文件正在读取file.php(staff.php)以检查用户提交的是否是工作人员. 如果用户是工作人员,那么它会更改send.php中的用户名变量. 到目前为止,send.php只是成功的,包括Staff.php,我已经尝试了staff.txt,原因是,php代码在staff.php中. 解决方法
试试这个:
$data="echo 'hello world!';"; $filecontent=file_get_contents('file.php'); // position of "?>" $pos=strpos($filecontent,'?>'); $filecontent=substr($filecontent,$pos)."rn".$data."rn".substr($filecontent,$pos); file_put_contents("file.php",$filecontent); 请不要忘记,您需要检查用户的数据. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |