찾다
php教程php手册php开发app接口之静态缓存

php开发app接口之静态缓存

Jun 06, 2016 pm 07:42 PM
appphp개발하다인터페이스은닉처공전

(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>

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

<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>
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.