重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
?
从策划到设计制作,每一步都追求做到细腻,制作可持续发展的企业网站。为客户提供成都网站建设、网站建设、网站策划、网页设计、空间域名、网络空间、网络营销、VI设计、 网站改版、漏洞修补等服务。为客户提供更好的一站式互联网解决方案,以客户的口碑塑造优易品牌,携手广大客户,共同发展进步。
require('conn.php');
echo
$_get['nid'];
if($_get['mod']=="p")
{
$exec='select
*
from
news
where
nid='.$_get['nid'];
$result=mysql_query($exec);
$rs=mysql_fetch_array($result);
$title=htmlspecialchars_decode($rs['ntitle']);
$content=htmlspecialchars_decode($rs['ncontent']);
$data=htmlspecialchars_decode($rs['ndate']);
$path="html/"乱陆碧.date("ymdhis",
time())."1111.htm";
$fp=fopen("model.htm","r");
//只读打开模板
$str=fread($fp,filesize("model.htm"));//悉搜读取模板中内容
$str=str_replace("@文章名@",$title,$str);
$str=str_replace("@时间@",$data,$str);
$str=str_replace("@正文@",$content,$str);//替换内容
fclose($fp);
$handle=fopen($path,"w");
//写入方式打开新闻路径
fwrite($handle,$str);
//把刚才替换的内容写哗举进生成的html文件
fclose($handle);
al_url("创建文件成功\\n".$path,"index.php");
}
?
php接收二进制文件怎么替换里面的内容
php接收二进制文件如下:
?php
header('Content-type: text/html; charset=utf-8');
error_reporting(0);
$filename = $_GET["filename"];
$filesize = $_GET["filesize"];
$xmlstr = $GLOBALS[HTTP_RAW_POST_DATA];//$_POST["data"];//
if(empty($xmlstr)) $xmlstr = file_get_contents('php://input');
$raw = $xmlstr;//得到post过来的二进制原始数据
$file = fopen("./upload/".$filename,"w");//打开文件准备写入
fwrite($file,$raw);//写入
fclose($file);//关闭
?
接收的二进制文件中非标准字符(0x7F)的字节被替换为三个字节,比如E2替换为EF 9F A2
现在我想在Php接收到文件之后还原回去,把EF 9F A2替换为E2,请问这个怎么实现?
非常感谢!
PHP 二进制老敬
------解决方案早做--------------------
他的数据转换规则是这样的:
文件头不变,文件头多长不清楚,图上到0050h都一样的
=7F的字节,因为utf-8也一样,可以认为也转换了utf-8
=80的字节,高位加上F7,再转utf-8,例如E2就变成F7E2然后转utf-8成为EF 9F A2
至少他图中E2/FB/91/B2/81...都满足这个规则
------解决方案--------------------
本帖最后由 xuzuning 于 2013-05-02 15:35:02 编辑
用正则可这样写
假定数陆含衡据已把存在变量 $s 中,则
$s = preg_replace_callback('/[\xef]../', 'foo', $s);
function foo($r) {
$c = (ord($r[0]{1}) 0x03) 6;
$c += (ord($r[0]{2}) 0x3f);
return chr($c);
}
你得到一堆文件资源没法直接替换吧
,只有string才能谈喊笑握得上替换
你至少得这样
打开文件,得到文件资源
将文件资升如源用郑庆fread等读出转为一个大的string
然后进行你想要的各种替换,正则替换等等都行
替换完毕的string
再写入文件
//芹哪差简单写法(未考虑大文件,文件嫌皮不存在的情况);
$content =file_get_contents('123.php');
//复杂替缓乎换可以考虑使用正则。
$content = str_replace('我是123','我也是123',$content);
file_put_contents('123.php',$content);