Home > php教程 > php手册 > body text

php开发app接口之静态缓存

WBOY
Release: 2016-06-06 19:42:21
Original
1482 people have browsed it

(1) 静态 缓存 这里技术的本质是我们将我们所需要的一些数据临时存在服务器的一些文件中。 ?php class File { private $_dir ; const EXT= 'php' ; public function __construct () { $this -_dir=dirname( __FILE__ ). '/files/' ; } public function cache

(1)静态缓存
这里技术的本质是我们将我们所需要的一些数据临时存在服务器的一些文件中。

<code><span><span><?php </span>
<span><span>class</span> <span>File</span>
{</span>
    <span>private</span> <span>$_dir</span>;
    <span>const</span> EXT=<span>'php'</span>;
    <span>public</span> <span><span>function</span> <span>__construct</span><span>()</span>
    {</span>
        <span>$this</span>->_dir=dirname(<span>__FILE__</span>).<span>'/files/'</span>;
    }
    <span>public</span> <span><span>function</span> <span>cacheDate</span><span>(<span>$key</span>,<span>$value</span>=<span>''</span>,<span>$path</span>=<span>''</span>)</span> 
    {</span>
        <span>$filename</span>=<span>$this</span>->_dir.<span>$path</span>.<span>$key</span>.<span>self</span>::EXT;
        <span>//将value值写入<strong>缓存</strong></span>
        <span>if</span>(<span>$value</span>!==<span>''</span>)
        {
            <span>//如果value值为null</span>
            <span>if</span>(is_null(<span>$value</span>))
            {
                <span>return</span> unlink(<span>$filename</span>);
            }
            <span>$dir</span>=dirname(<span>$filename</span>);
            <span>if</span>(!is_dir(<span>$dir</span>))
            {
                mkdir(<span>$dir</span>,<span>0777</span>);
            }
            <span>return</span> file_put_contents(<span>$filename</span>,json_encode(<span>$value</span>));
        }
        <span>if</span>(!is_file(<span>$filename</span>))
        {
            <span>return</span> <span>FALSE</span>;
        }
        <span>else</span>
        {
            <span>return</span> json_decode(file_get_contents(<span>$filename</span>),<span>true</span>);
        }
    }
}</span></span></code>
Copy after login

这里封装了一个类,下面是测试代码

<code><span><span><?php </span>
<span>require_once</span> <span>'./File.php'</span>;
<span>$data</span>=<span>array</span>(
    <span>'id'</span>=><span>1</span>,
    <span>'name'</span>=><span>'singwa'</span>,
    <span>'type'</span>=><span>array</span>(<span>4</span>,<span>5</span>,<span>6</span>),
    <span>'test'</span>=><span>array</span>(<span>1</span>,<span>45</span>,<span>67</span>=><span>array</span>(<span>123</span>,<span>'tsysa'</span>)),
);
<span>$file</span>=<span>new</span> File();
<span>//增加<strong>缓存</strong>的方式 这样会将指定的数据放入指定文件夹中</span>
<span>if</span>(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>),<span>$data</span>)
{
    var_dump(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>));
    <span>echo</span> <span>"success"</span>;
}
<span>else</span> 
{
    <span>echo</span> <span>"error"</span>;
}
<span>//取出<strong>缓存</strong>的方式</span>
<span>if</span>(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>))
{
    var_dump(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>));
    <span>echo</span> <span>"success"</span>;
}
<span>else</span> 
{
    <span>echo</span> <span>"error"</span>;
}
<span>//删除<strong>缓存</strong>的方式</span>
<span>if</span>(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>),<span>$value</span>=<span>null</span>)
{
    var_dump(<span>$file</span>->cacheDate(<span>'index_mk_cache'</span>));
    <span>echo</span> <span>"success"</span>;
}
<span>else</span> 
{
    <span>echo</span> <span>"error"</span>;
}</span></span></code>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!