PHPCMS批量更改文章发布时间的办法

2016-07-10   点击:   发布者:南京互诺科技
 
如果你网站的数据都是采集得来,但是发布时间不想跟目标站一样,这个时候就需要涉及到批量更改的问题了,因为不可能一篇一篇的手动去更改,这得多累人呐!
 
我们知道phpcms文章页用{$inputtime}这个标签即可获取到文章的发布时间,所以对这个进行“手术”,先用strtotime函数把时间格式转换回时间戳,然后再进行计算即可。
 
<?php
$lastime = strtotime($inputtime) - 60*60*24*rand(10,30);
$lastime+=rand(1,100);
echo date('Y-m-d h:i:s',$lastime);
?>
 
上面代码的意思是在原因的时间基础上随机减少10-30天,再从1-100中随机抽取加上,最后再把时间戳格式化就完成了。
 
在使用中我们发现用了上面的代码虽然可以批量更改了时间,但是因为是随机的,每次生成都会不一样,而且栏目页和内容页会不统一。我们想想别的办法,能不能直接把时间直接写入数据库里面呢?这样问题就迎刃而解了!
 
 
OK!知道了思路我们就开始操作,在根目录写新建newtime.php,用下面的代码保存然后运行即可。
 
 
 
<?php
$mydbhost = "localhost";  //配置主机
$mydbuser = "";           //数据库用户
$mydbpw = "";           //数据库密码
$mydbname = "";           //数据库名字
$mydbcharset = "utf8";    //设置编码
$link = mysql_connect($mydbhost,$mydbuser,$mydbpw) or die (mysql_error());
mysql_select_db($mydbname,$link) or die("没有该数据库:".$mydbname);
mysql_query("SET NAMES '$mydbcharset'");
 
$catid = '228,229,230,231,232,233,234,235';
$row= mysql_query("SELECT `id`,`inputtime` FROM `v9_news` WHERE `v9_news`.`catid` in($catid) ORDER BY `v9_news`.`id` DESC");
while ($rs=mysql_fetch_array($row)){
$id = $rs[id];
$inputtime = $rs[inputtime];
$lastime = $inputtime - 60*60*24*rand(80,150);
$lastime+=rand(1,100);
$sql = "UPDATE `v9_news` SET `inputtime` = '$lastime' WHERE `id`='$id'";
mysql_query($sql);
//echo $sql;
}
mysql_close();//关闭数据库连接
?>
window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"1","bdSize":"16"},"share":{},"image":{"viewList":["qzone","tsina","tqq","renren","weixin"],"viewText":"分享到:","viewSize":"16"},"selectShare":{"bdContainerClass":null,"bdSelectMiniList":["qzone","tsina","tqq","renren","weixin"]}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];