Example #1
0
/**
 * 快速文件数据读取和保存 针对简单类型数据 字符串、数组
 * @param string $name 缓存名称
 * @param mixed $value 缓存值
 * @param string $path 缓存路径
 * @return mixed
 */
function F($name, $value = '', $path = DATA_PATH)
{
    static $_cache = array();
    $filename = $path . $name . '.php';
    if ('' !== $value) {
        if (is_null($value)) {
            // 删除缓存
            if (false !== strpos($name, '*')) {
                return false;
                // TODO
            } else {
                unset($_cache[$name]);
                return Think\Storage::unlink($filename, 'F');
            }
        } else {
            Think\Storage::put($filename, serialize($value), 'F');
            // 缓存数据
            $_cache[$name] = $value;
            return null;
        }
    }
    // 获取缓存数据
    if (isset($_cache[$name])) {
        return $_cache[$name];
    }
    if (Think\Storage::has($filename, 'F')) {
        $value = unserialize(Think\Storage::read($filename, 'F'));
        $_cache[$name] = $value;
    } else {
        $value = false;
    }
    return $value;
}
Example #2
0
/**
 * 读写配置文件
 * @param  string $name  名称
 * @param  string $value 内容
 * @param  string $path  路径
 */
function config($name, $value = '', $path = 'Admin/Conf/')
{
    $filename = APP_PATH . $path . $name . '.php';
    if ('' !== $value) {
        if (is_null($value)) {
            Think\Storage::unlink($filename);
            return true;
        } else {
            Think\Storage::put($filename, "<?php\r\nreturn " . array_encode_format($value) . ";");
        }
    }
    if (Think\Storage::has($filename)) {
        return require $filename;
    } else {
        return false;
    }
}