core.is_secure.php

来自「希望此段源编码能给所有需要它的朋友带去快乐」· PHP 代码 · 共 60 行

PHP
60
字号
<?php/** * Smarty plugin * @package Smarty * @subpackage plugins *//** * determines if a resource is secure or not. * * @param string $resource_type * @param string $resource_name * @return boolean *///  $resource_type, $resource_namefunction smarty_core_is_secure($params, &$smarty){    if (!$smarty->security || $smarty->security_settings['INCLUDE_ANY']) {        return true;    }    if ($params['resource_type'] == 'file') {        $_rp = realpath($params['resource_name']);        if (isset($params['resource_base_path'])) {            foreach ((array)$params['resource_base_path'] as $curr_dir) {                if ( ($_cd = realpath($curr_dir)) !== false &&                     strncmp($_rp, $_cd, strlen($_cd)) == 0 &&                     substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR ) {                    return true;                }            }        }        if (!empty($smarty->secure_dir)) {            foreach ((array)$smarty->secure_dir as $curr_dir) {                if ( ($_cd = realpath($curr_dir)) !== false) {                    if($_cd == $_rp) {                        return true;                    } elseif (strncmp($_rp, $_cd, strlen($_cd)) == 0 &&                        substr($_rp, strlen($_cd), 1) == DIRECTORY_SEPARATOR) {                        return true;                    }                }            }        }    } else {        // resource is not on local file system        return call_user_func_array(            $smarty->_plugins['resource'][$params['resource_type']][0][2],            array($params['resource_name'], &$smarty));    }    return false;}/* vim: set expandtab: */?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?