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’ ) {
}

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

弊社ではWEBフォームや予約管理システムなど、
WEBブラウザ上で動作するあらゆるシステムをお客様の状況や予算に応じてご提案します。

WEBシステム開発

WEBサイト制作実績3,000サイト以上!
新規作成からリニューアルまで、
多様なご要望にお応えした弊社制作事例から検討したい方はこちら

制作実績を見る

-PHP

関連記事

WYSIWYGエディタCKEditor + KCFinderで画像の保存先を動的に指定する方法。

WYSIWYGエディタCKEditor + KCFinderで画像の保存先を動的に指定する方法。

ブログの記事の編集などにWYSIWYGエディタCKEditor + KCFinderを導入しているサイトでログインするユーザごとに画像のアップロード先を切り替えたい状況がございます。 その方法を紹介し …

wpdbは使わず、WordPressのデータベースから直接データを取得する方法

wpdbは使わず、WordPressのデータベースから直接データを取得する方法

今回は、wordpressのwpdbを利用できない環境で、phpのPDOを利用し、 selectする方法をご紹介いたします。 WordPressのサイトからフォームに記事IDとともに遷移し、フォームに …