*

cakephpでユーザ定義定数を読みだす方法

公開日: : 最終更新日:2014/03/06 WEBサービス, テクニック , , ,

スクリーンショット 2013-12-21 21.10.46

サイトを作るにあたって、定数を使いたいときがよくあります。
サイト上のある数値に変更があっても、定数を使っていれば、その値が記述されているファイルだけを更新すれば、サイト全体に値の変更が反映され、手間が減ります。

PHP:定数
http://php.net/manual/ja/language.constants.php

通常のPHPであれば「define」を使って定数を定義するのですが、CakePHPで定数を定義する際にはちょっとテクニックが必要です。

1.定義ファイルを作成する

/app/Config/ 内に「const.php」を作成します。
ここではconstにしてますが、ファイル名は何でもいいです。

定義ファイルには以下のように記述します。

<?php
//ユーザ定義定数
//呼び出し方:	echo FOOBAR;
define("FOOBAR","テスト");

//配列
//呼び出し方:	$fuga = Configure::read("fuga");
$config['fuga'] = array("a","b","c");

//連想配列
//呼び出し方:	$hoge = Configure::read("hoge");
$config['hoge'] = array(
  "A"=>"あ",
  "B"=>"い",
  "C"=>"う",
);

ここまでは簡単ですね。
通常の定数だけでなくて、配列や連想配列も使えます。
この使い方はとても便利なので、覚えておくといいと思います。

2.bootstrapで定義ファイルを読み込む

/app/Config/bootstrap.php に、次の記述を追加します。

Configure::load("const");

これで準備完了です。
このConfigureメソッドで定義ファイルをloadしてるんですね。

3.使ってみる

<?php
echo FOOBAR;  //テスト と表示される

$fuga = Configure::read("fuga");
echo $fuga[0];  //a と表示される

$hoge = Configure::read("hoge");
echo $hoge["A"];  //あ と表示される
//もしくは
echo $hoge["hoge.A"];

こんな感じです。簡単ですね。
ぜひ使ってみてください。

Google AD


Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

WP-SpamFree by Pole Position Marketing

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

「おっ」思ったWEBデザイン

ちょっと調べることがあったのでメモ。■株式会社テトラシーンhttp://www.tetratone.

記事を読む

no image

ロリポップ+お名前.comで独自ドメイン取得

onamae.com で独自ドメイン取得しました。 そのときのメモ。 1.lollipo

記事を読む

【どうしてこうなった!?】このブログの直帰率が1%を切りました【自分史上初】

以前のエントリーで、このブログの直帰率が80%から20%に激減したことを報告しました。

記事を読む

no image

lolipop(ロリポップ)でTinyTinyRSSを導入

Google reader終了のお知らせは、以前ほど使わなくなったサービスとは言え、かなり自

記事を読む

composerでcakephpをインストールしてプロジェクトを始めてみる

こんにちは!今日も寒いです。 この時期になると気になってくるのが花粉症です。 自分は花粉

記事を読む

PVが3000を超えたので3か月やったこととを公表します

ウクライナ情勢が緊迫している昨今、皆様お元気でしょうか? 自分のブログには大きな変化がありました。

記事を読む

no image

ワードプレスのプラグイン初作成

タイトルのとおり。ワードプレスのプラグインを作ってみました。仕事でEC-CUBE使って販売をしている

記事を読む

ログインアカウント

cakephpでviewからログイン判定してアカウント表示する機能

cakephpのログイン機能を、viewから判定させたかったので調べてみました。 よく

記事を読む

facebook logo

facebookでログイン機能を作成してみた

最近の会員サイトには、facebookでログインする、という機能がよくついてます。 この機能が

記事を読む

アマゾンのクラウド(AWS)を使ってみる その2

前回、アマゾンのクラウド(AWS)を使ってみる で何も無い所からEC2を立ち上げましたが、そのあ

記事を読む

Google AD

Google AD

iPhone6が来ました。アップルのサポートは未だ健在だったというお話。

アップルは製品だけじゃなくて、サポートの対応にまでその企業哲学

iphone6にするか、iphone6plusにするか、まだ決めなくてもいい方法

iphone6が発表されましたね。iwatchは来年に持越しで

パパも2歳になったよ

早いもので子供が2歳になりました。 年を取るごとに年月が早く

転職して新しい職場で仕事始めました

1か月以上もブログを放置してましたが、私は元気です。 むしろ

6月末で現職を退職します

ご存知の方もいらっしゃると思いますが、6月末で現職を退職するこ

→もっと見る