PHPのフレームワーク「CakePHP(CakePHP3)」でのプロジェクトの作成から、プログラミングの基本「Hello World!」を表示させるまでの流れをまとめました。
コンテンツ
プロジェクトを作成
プロジェクトの作成はComposerを使って行う為、まずはComposerのインストールから行います。
Composerのインストール
# curl -s https://getcomposer.org/installer | php
↓
composerを「/usr/local/bin」にインストールさせます。
# mv composer.phar /usr/local/bin/composer
※composer.pharを「/usr/local/bin」に置くことで、composerをどこからでも実行できるようになります。
↓
composerがインストールされたかを確認します。
# composer --version
=============================================
Composer version 1.9.0 2019-08-02 20:55:32
=============================================
と表示されればOKです。
これで、composerのインストールは完了です。
プロジェクトの作成
次は、composerを使ってプロジェクトを作成します。
ドキュメントルートに移動します。
# cd /var/www/html
↓
プロジェクトを作成します
今回は、プロジェクト名を「example」としておきます。
# composer create-project --prefer-dist cakephp/app example
↓
もし、ここで以下のようなエラーが出た場合には、「php-intl」をインストールする必要があります。
「You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.」
「php-intl」のインストールは、通常は以下のコマンドで行えます。
# yum install -y php-intl
ただ、環境によってもインストール方法が異なるので注意して下さい。
私の場合には、remiレポジトリを追加してPHPのインストールを行ったので、
以下のようにして「php-intl」をインストールしました。
# yum install -y --enablerepo=remi,remi-php73 php-intl
↓
「php-intl」のインストールが完了したら、
再度、プロジェクトの作成を試みてみます。
# composer create-project --prefer-dist cakephp/app example
を実行して、
エラーが出なければ、
Set Folder Permissions ? (Default to Y) [Y,n]?
と聞かれます。
ここは、「Y」を入力して、Enterして下さい。
Updated Security.salt value in config/app.php
と表示されれば、プロジェクトの作成まで完了です。
↓
http://ドメイン名/example/
へアクセスして下さい。
以下の画面が表示されれば、OKです。
もし「.htaccess」が有効になっていない場合には、有効化しておいてください。
# vi /etc/httpd/conf/httpd.conf
で「httpd.conf」を開いて、
================================
<Directory "/var/www/html">
・
Allowoverride None
・
</Directory>
================================
を
================================
<Directory "/var/www/html">
・
Allowoverride All
・
</Directory>
================================
に変更して下さい。
Apacheを再起動すれば、「.htaccess」が有効になります。。
# systemctl restart httpd.service
「.htaccess」は、ほとんどのレンタルサーバーでは有効になっています。
が、自分でWEBサーバーのインストールまで行った場合、時々「.htaccess」が有効になっていないこともあります。
なので、プロジェクトの作成まで正常に完了したのに画面が表示されない場合には、「.htaccess」の設定も疑ってみて下さい。
Hello World!を表示
さっそく「Hello World!」と表示させるためのプログラムを作成します。
それでは、「Hello World!」の表示プログラムに必要なコントローラー(Controller)とビュー(View)を作成します。
コントローラーとビューは、共に「src」ディレクトリの中で作成します。
↓
今回は、「example」というプロジェクト名で作成したので。
example/src/
の直下に「Controller」と「Template」というディレクトリがあります。
それらが、
それぞれコントローラーとビューを保存するディレクトリになります。
それでは、まずは、コントローラーを作成します。
コントローラー名は「HelloworldController」にします。
↓
example/src/Controller/の中に「HelloworldController.php」というファイルを作成して、
以下を記述して下さい。
<?php
namespace App\Controller;
class HelloworldController extends AppController{
function index(){
$d = "Hello world!";
$this->set("d", $d);
}
}
↓
次は、ビューの作成を行います。
example/src/Template/の中に「Helloworld」ディレクトリを作成します。
↓
src/Template/Helloworld/の中にindex.ctpファイルを作成して、以下を記述して下さい。
<html>
<head>
<title><?php echo $d; ?></title>
</head>
<body>
<p><?php echo $d; ?></p>
</body>
</html>
それでは、
ブラウザ上から画面にアクセスしてみます。
http://ドメイン/example/helloworld/
にアクセスして、
以下の画面が表示されていればOKです。
この記事へのコメントはありません。