application/admin/behavior/ViewFilterBehavior.php
(开头部分) 8KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
<?php
namespace app\admin\behavior;
use think\Db;
/**
* 系统行为扩展:
*/
class ViewFilterBehavior {
protected static $actionName;
protected static $controllerName;
protected static $moduleName;
protected static $method;
/**
* 构造方法
* @param Request $request Request对象
* @access public
*/
public function __construct()
{
}
// 行为扩展的执行入口必须是run
public function run(&$params){
self::$actionName = request()->action();
self::$controllerName = request()->controller();
self::$moduleName = request()->module();
self::$method = request()->method();
$this->_initialize($params);
}
private function _initialize(&$params) {
$this->security_verify($params);
$this->weappUpgrade($params);
}
private function security_verify(&$params)
{
$ctl_act = self::$controllerName.'@'.self::$actionName;
if ('GET' == self::$method && in_array(self::$controllerName, ['Filemanager', 'Weapp']) || in_array($ctl_act, ['Arctype@ajax_newtpl','Archives@ajax_newtpl'])) {
$security = tpSetting('security');
if (empty($security['security_ask_open']) || !security_verify_func($ctl_act)) {
return true;
}
$admin_id = session('?admin_id') ? (int)session('admin_id') : 0;
$admin_info = Db::name('admin')->field('admin_id,last_ip')->where(['admin_id'=>$admin_id])->find();
// 当前管理员二次安全验证过的IP地址
$security_answerverify_ip = !empty($security['security_answerverify_ip']) ? $security['security_answerverify_ip'] : '-1';
// 同IP不验证
if ($admin_info['last_ip'] == $security_answerverify_ip) {
return true;
}
$security_ask = $security['security_ask'];
$url = url('Security/ajax_answer_verify', ['_ajax'=>1]);
$replace = <<<EOF
<script type="text/javascript">
后面还有 166 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
