本文目录一览:
- 1、phpcms 整合 discuz7.0
- 2、php discuz的定时任务是什么原理怎么实现的?求高手解答
- 3、网上下载的php模板,discuz模板,如何使用?
- 4、Discuz! 7 PHP论坛管理员密码怎么修改
- 5、PHP正则Dz7论坛发帖应用(preg_match_all)
phpcms 整合 discuz7.0
如果你的dz使用的是二级域名的话还需要去设置一下cookie域为全局cookie
php discuz的定时任务是什么原理怎么实现的?求高手解答
php中定时计划任务的实现原理:
当 PHP 脚本正常地运行 NORMAL 状态时,连接为有效。当远程客户端中断连接时,ABORTED 状态的标记将会被打开。远程客户端连接的中断通常是由用户点击 STOP 按钮导致的。当连接时间超过 PHP 的时限时,TIMEOUT 状态的标记将被打开。
示例代码:
?php
ignore_user_abort(true);set_time_limit(0);
date_default_timezone_set('PRC'); // 切换到中国的时间
$run_time = strtotime('+1 day'); // 定时任务第一次执行的时间是明天的这个时候
$interval = 3600*12; // 每12个小时执行一次
if(!file_exists(dirname(__FILE__).'/cron-run')) exit(); // 在目录下存放一个cron-run文件,如果这个文件不存在,说明已经在执行过程中了,该任务就不能再激活,执行第二次,否则这个文件被多次访问的话,服务器就要崩溃掉了
do {
if(!file_exists(dirname(__FILE__).'/cron-switch')) break; // 如果不存在cron-switch这个文件,就停止执行,这是一个开关的作用
$gmt_time = microtime(true); // 当前的运行时间,精确到0.0001秒
$loop = isset($loop) $loop ? $loop : $run_time - $gmt_time; // 这里处理是为了确定还要等多久才开始第一次执行任务,$loop就是要等多久才执行的时间间隔
$loop = $loop 0 ? $loop : 0;
if(!$loop) break; // 如果循环的间隔为零,则停止
sleep($loop);
// ...
// 执行某些代码
// ...
@unlink(dirname(__FILE__).'/cron-run'); // 这里就是通过删除cron-run来告诉程序,这个定时任务已经在执行过程中,不能再执行一个新的同样的任务
$loop = $interval;
} while(true);
网上下载的php模板,discuz模板,如何使用?
一般模版都有一个template文件夹,一个image文件夹,一个样式导入文件(大概是txt格式的),个别还有一些其他的htm文件
通常都给你分好文件夹在,只需要覆盖就行
然后在后台界面风格里,导入txt,就可以看到你导入的模版风格在列表里了
如果是discuz7以上的,可能操作更简单一点,有可视化界面
Discuz! 7 PHP论坛管理员密码怎么修改
1.ucenter
后台去改。
2.用
phpMyAdmin
连你
的数据库【数据库的用户名和密码存在config.inc.php这里文件里】
,数据库numbers表password是32位
md5加密
从新设置一个密码md5替换【数据库的用户名和密码存在config.inc.php这里文件里】
PHP正则Dz7论坛发帖应用(preg_match_all)
function ttd($message){
//非贪婪模式
//不俘获无关量
preg_match_all( "/(?:\[ttd\]){1}(.*?)(?:\[\/ttd\]){1}/im" , $message , $match) ;
return $match[1] ;
}