関数・クラス解説

wincache_ucache_add

version:PECL wincache >= 1.1.0 (公式)

変数が既にキャッシュに存在しない場合にのみ変数をユーザーキャッシュに追加する

公式リファレンス

書式

wincache_ucache_add ( string $key , mixed $value [, int $ttl = 0 ] ) : bool

wincache_ucache_add ( array $values [, mixed $unused = NULL [, int $ttl = 0 ]] ) : bool

説明

変数が既にキャッシュに存在しない場合にのみ変数をユーザーキャッシュに追加します。 追加された変数は、有効期限に達するか、 wincache_ucache_delete() あるいは wincache_ucache_clear() で削除されるまではキャッシュに残り続けます。

パラメータ

key
変数を格納するときに、この名前のキーを使います。 同じキーで既に変数が格納されているときは、この関数は失敗して FALSE を返します。 key は大文字小文字を区別します。同じキーがあっても値を上書きしたい場合は wincache_ucache_set() 関数をかわりに使います。 key には name => value のペアの配列を渡すこともできます。 この場合は name がキーとなります。 この形式を使えば複数の値を一度の操作でキャッシュに格納できるので、競合状態になることを防げます。
value
格納したい変数の値。ファイルハンドルのようなリソース型以外のすべてのデータ型をサポートしています。 最初のパラメータが配列の場合は、このパラメータは無視されます。 一般的な指針として、key に配列を渡す場合は value を NULL にしておきましょう。 value がオブジェクト、あるいはオブジェクトを含む配列である場合は、 オブジェクトがシリアライズされます。オブジェクトのシリアライズについての詳細は __sleep() を参照ください。
values
キーと値の連想配列。
ttl
変数のキャッシュ内での生存時間を秒単位で指定します。 ttl で指定した秒数が経過すると、 格納されている変数はキャッシュから削除されます。 このパラメータのデフォルト値は 0 で、これは wincache_ucache_delete() あるいは wincache_ucache_clear() で明示的に削除するまでキャッシュに残り続けることを意味します。

返値

key が文字列のときは、成功した場合に TRUE、失敗した場合に FALSE を返します。 key が配列のときの返り値は、次のようになります。

  • 配列内のすべての name => value ペアが設定できた場合は、空の配列を返します。
  • 配列内の name => value ペアがひとつも設定できなかった場合は、FALSE を返します。
  • 成功したペアと失敗したペアがある場合は、ユーザーキャッシュへの追加に失敗した name=>value ペアを含む配列を返します。

サンプル

例1 wincache_ucache_add() で key を文字列にする例

$bar = 'BAR'; var_dump(wincache_ucache_add('foo', $bar)); var_dump(wincache_ucache_add('foo', $bar)); var_dump(wincache_ucache_get('foo'));

上の例の出力は以下となります。

bool(true) bool(false) string(3) "BAR"

例2 wincache_ucache_add() で key を配列にする例

$colors_array = array('green' => '5', 'Blue' => '6', 'yellow' => '7', 'cyan' => '8'); var_dump(wincache_ucache_add($colors_array)); var_dump(wincache_ucache_add($colors_array)); var_dump(wincache_ucache_get('Blue'));

上の例の出力は以下となります。

array(0) { } array(4) { ["green"]=> int(-1) ["Blue"]=> int(-1) ["yellow"]=> int(-1) ["cyan"]=> int(-1) } string(1) "6"

参考

  • wincache_ucache_set() - 変数をユーザーキャッシュに追加し、変数が既にキャッシュに存在する場合はそれを上書きする
  • wincache_ucache_get() - ユーザーキャッシュに格納された変数を取得する
  • wincache_ucache_delete() - 変数をユーザーキャッシュから削除する
  • wincache_ucache_clear() - ユーザーキャッシュの中身全体を削除する
  • wincache_ucache_exists() - 変数がユーザーキャッシュに存在するかどうかを調べる
  • wincache_ucache_meminfo() - ユーザーキャッシュのメモリ使用状況についての情報を取得する
  • wincache_ucache_info() - ユーザーキャッシュにキャッシュされたファイルについての情報を取得する
  • __sleep()
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール