検索
ホームページphp教程php手册ThinkPHP3.1.3核心类 Cache.class.php

/ThinkPHP/lib/core/Cache.class.php 一、示例代码 需要注意的就三个函数 1、连接缓存 public function connect($type=,$options=array()) { if(empty($type)) $type = C(DATA_CACHE_TYPE); $type = strtolower(trim($type)); $class = Cache.ucwords($type)

/ThinkPHP/lib/core/Cache.class.php

一、示例代码

需要注意的就三个函数

1、连接缓存

 public function connect($type='',$options=array()) {
        if(empty($type))  $type = C('DATA_CACHE_TYPE');
        $type  = strtolower(trim($type));
        $class = 'Cache'.ucwords($type); /*根据不同的类型 调用不同的缓存引擎  默认TP只提供了 文件缓存方式 在 Lib/Driver/Cache/CacheFile.class.php*/
        if(class_exists($class))
            $cache = new $class($options);
        else
            throw_exception(L('_CACHE_TYPE_INVALID_').':'.$type);
        return $cache;
    }

2、取得缓存类实例

static function getInstance() {
       $param = func_get_args();
        return get_instance_of(__CLASS__,'connect',$param);
    }
这里调用了 function.php 中的 get_instance_of 函数,实际上 是吧 单例模式独立出去了


3、队列缓存

作用就是 设置缓存的长度 

如果不启用缓存队列,在超时时间内,只要set缓存 就是不断添加缓存

额设置的缓存长度 如10 ,那么根据队列“先进先出”的原则,当缓存数量大于10的时候,会删除队首的缓存。


二、值得说的编程小细节:

1、

public function __get($name) {
        return $this->get($name);
    }

    public function __set($name,$value) {
        return $this->set($name,$value);
    }
这里体现了面向对象 多态思想 

子类继承Cache类, Cache类中的$this->set() 是调用的子类中的方法

2、function.php 中的 get_instance_of 函数

把单例模式独立出来 是比较不错的方式



声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
如何在 Windows 11、10 中启用或禁用核心隔离内存完整性如何在 Windows 11、10 中启用或禁用核心隔离内存完整性Apr 27, 2023 pm 10:43 PM

如今,大多数Windows用户都使用虚拟机。当他们系统上的核心隔离被禁用时,安全风险和攻击是可以预料的。即使设置了核心隔离,如果用户升级了系统,也会禁用内存完整性。如果启用核心隔离,系统将免受攻击。对于经常使用虚拟计算机的人,强烈建议他们启用它。如果您正在寻求有关如何在任何Windows11系统上启用或禁用核心隔离内存完整性的说明,此页面可以提供帮助。如何使用Windows安全应用在Windows11中启用或禁用核心隔离内存完整性第1步:按Windows键并键入Windows安全

苹果M3 Ultra推出全新版本,新增32个CPU核心和80个GPU核心苹果M3 Ultra推出全新版本,新增32个CPU核心和80个GPU核心Nov 13, 2023 pm 11:13 PM

这款芯片可能会搭载高达80个GPU核心,进而成为M3系列中性能最强大的产品。Max两倍核心数量从M1与M2系列的发展模式来看,苹果的「Ultra」版芯片基本上是「Max」版本的两倍核心数量,这是因为苹果实际上将两颗Max芯片透过内部连接技术结合起来,形成了M1Ultra与M2Ultra。80个GPU核心M3Ultra可能拥有「高达80个图形处理核心」。这一预测基于苹果芯片的发展路径:从基础版到「Pro」版,再到图形核心数量翻倍的「Max」版,以及CPU和GPU核心都翻倍的「Ultra」版。举例来

Golang的核心是否仅限于单核运行?Golang的核心是否仅限于单核运行?Feb 29, 2024 pm 06:39 PM

《Golang的核心是否仅限于单核运行?》Golang作为一门现代化的编程语言,在并发处理和性能方面有着出色的表现。然而,有人对Golang的核心是否仅限于单核运行提出了质疑。在本文中,我们将探讨Golang的并发特性以及它在多核处理器上的表现,并通过具体的代码示例来解答这个问题。Golang在语言层面对并发处理进行了深入的设计和支持。它使用goroutin

深入理解JAVA核心垃圾回收算法深入理解JAVA核心垃圾回收算法Nov 08, 2023 am 11:30 AM

深入理解JAVA核心垃圾回收算法,需要具体代码示例垃圾回收(GarbageCollection,简称GC)是现代编程语言里一项非常重要的功能,它可以自动管理内存的分配和释放,避免了手动管理内存的复杂性和可能的错误。在JAVA语言中,垃圾回收算法是JAVA虚拟机(JVM)的核心功能之一,今天我们将深入理解JAVA核心垃圾回收算法,并且看一些具体的代码示例。一

Go语言的核心编写语言是什么?Go语言的核心编写语言是什么?Mar 27, 2024 am 11:30 AM

标题:Go语言的核心编写语言是什么?Go语言是一种由Google开发的编程语言,被称为“云时代的C语言”。它具有高效的并发设计、简洁的语法和强大的性能,因此在云计算、大数据和人工智能等领域得到了广泛的应用。在Go语言中,核心的编写语言是Go语言本身,通过使用Go语言的原生特性来实现各种功能。Go语言的语法简洁、易读易写,其中核心的编写语言主要包括以下几个方面

什么是计算机的核心部分什么是计算机的核心部分Dec 11, 2020 am 10:24 AM

CPU(中央处理器)是计算机的核心部分;中央处理器是电脑中的核心配件,其主要功能是解释计算机指令以及处理计算机软件中的数据;中央处理器主要包括控制器和运算器两部分。

java技术的核心是什么java技术的核心是什么Dec 25, 2023 pm 04:24 PM

Java技术的核心包括Java虚拟机、垃圾收集机制、代码安全检测和丰富的API库和工具支持。详细介绍:1、Java虚拟机,是一个虚拟的计算机,它模拟了一个计算机的硬件系统,并负责执行Java字节码,通过JVM,Java程序可以在任何支持JVM的设备上运行,实现了“一次编写,到处运行”的跨平台特性;2、垃圾收集机制,Java的垃圾收集器自动管理内存,自动回收不再使用的对象等等。

M3 Max芯片:苹果推出16核心CPU与40核心GPU的强大测评M3 Max芯片:苹果推出16核心CPU与40核心GPU的强大测评Aug 21, 2023 pm 08:49 PM

Apple于周日正在测试全新M3的基本版本,并搭载在全新的Macmini上。公司已在高端MacBookPro上测试最高达40GPU核心的芯片。尽管苹果尚未公开M3芯片,但工程师已在测试更强大的版本。彭博的消息来源指,有一台代号J514的全新手提电脑,搭载了16核心CPU和40核心GPU的AppleSilicon芯片,这台电脑很可能是全新的MacBookPro。M3最大VSM2最大具体来说,新MacBookPro的高端版本将由M3Max芯片推动,具有12个高性能核心以及4个性能核心。与M2Max相

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。