PHP

CakePHPで開発環境と本番環境の設定を切り替える方法。

投稿日:2014年5月27日 更新日:

CakePHPフレームワークを利用し、データベースを利用したCMSなど制作する際、開発環境と本番環境で同じファイルにしたい場合があるかと思います。

今回は、『SetEnv』を利用した開発環境と本番環境の切り替え方法をご紹介します。

一般的な方法として、$_SERVER環境変数で条件分岐する方法がございますが、
この方法で、注意しないといけないポイントとして
CRONなどでコンソールからプログラムを動作させる場合、$_SERVER環境変数は利用できないということです。

その場合、SetEnvを利用してみましょう。

1)開発環境の .htaccess  に下記を追記(.htaccess を使える環境が前提。httpd.confでも構いません。)
SetEnv APL_ENV development

※本番環境では不要です。

2)CakePHP の最初に読み込まれる index.php に下記を追記
defined(‘APL_ENV’) || define(‘APL_ENV’, (getenv(‘APL_ENV’) ? getenv(‘APL_ENV’) : ‘production’));

3)データベースの切替ファイルで下記のように条件分岐

if ( env(‘APL_ENV’) == ‘development’ ) {
}

このような方法ですとコンソールを利用したプログラムにも対応できるかと思います。

-PHP

関連記事

CakePHPのルーティング例

CakePHPのルーティング例

Webサイトではアドレスの構造は重要です。 CakePHPのルーティングの例について紹介します。 1. Router::connect(‘/index/’, array(‘controller’ =& …

PHPフレームワークLaravel4を試しました。

PHPフレームワークLaravel4を試しました。

1. Laravel4をインストールするためには、Composerを利用します。 以下のコマンドでComposerをインストールします。 % curl -s http://getcomposer.or …

phpフレームワークlaravel4でデータベースを操作してみました。

phpフレームワークlaravel4でデータベースを操作してみました。

phpのフレームワークlaravel4でデータベースの操作をためしました。 laravel4では、「Eloquent ORM」が含まれており、簡単にデータベースの操作が可能です。 1. 今回ブログの記 …

【WordPress】カスタムフィールドで何でも出来る!カスタムフィールドの便利な使い方 その1

【WordPress】カスタムフィールドで何でも出来る!カスタムフィールドの便利な使い方 その1

WordPressでサイトを作る場合カスタムフィールドがとても便利ですよね! そして投稿ページで入力したカスタムフィールドの値を他のトップページや固定ページでも使いたい。なんて事があるかと思います。 …

PHP(CakePHP)の開発でうまく動作しない場合について

PHP(CakePHP)の開発でうまく動作しない場合について

PHP(CakePHP)の開発でうまく動作しない場合の解決方法について何点か紹介します。 – CakePHPのモデルのsave()メソッドでレコードを更新したときに更新日付(modified列)が更新 …