CakePHP3.x(3.3)導入・インストールメモ(Windows環境)


Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

Windowsのローカル開発環境に、CakePHPの3.x系(今回は3.3)を導入する時の手順や気を付ける点をメモしておきます。

1)事前準備

CakePHP公式サイトの「クイックスタートガイド」ページを読む。

2)Composerの準備をする

CakePHP3.x系は、Composerを使って導入するようなので、Composerをダウンロードしてインストールする。
Composerをダウンロード
インストールは、Composer-Setup.exeをダブルクリックして、あとは画面に沿って基本的に「Next」押して進める。

3)インストールフォルダを用意する

コマンドプロンプトを起動して、CakePHPを入れたい・インストールしたいフォルダ(ディレクトリ)に「cd」コマンドで移動する

例)xamppのhtdocsのtestフォルダにインストールしたい場合

cd C:\xampp\htdocs\test
CakePHP3.x インストールディレクトリに移動
CakePHP3.x インストールディレクトリに移動

4)Composerを使用して、CakePHP3をインストールする

コマンドプロンプトに、以下コマンドを入力する。

composer create-project --prefer-dist cakephp/app bookmarker

※このコマンドは「bookmarker」という名前のアプリを開発したい場合。ここは、自分が作りたい名前(「blog」「music」等)に適宜変えて下さい。

CakePHP3.xインストール
CakePHP3.xインストール

最後に
「Set Folder Permissions ? (Default to Y) [Y,n]?」
と聞かれたら、パーミッション(アクセス権)の事なので、デフォルトの「y」と入力してエンターキーを押してください。

これで、CakePHP3.3のインストールは完了です。

5)インストールが成功したか確認をする

ブラウザに、今作ったフォルダのURL(http://localhost/test/bookmarker/)を入力してみて、以下の様なページが表示されたらOKです。

cakephp3.3ブラウザ初期表示
cakephp3.3ブラウザ初期表示

もし、以下の様なページが表示されたら、原因はCakePHP3で使われる「extension=php_intl.dll」が無効になってるということなので、有効にする必要があります。

extension=php_intl.dllが無効になってる場合
extension=php_intl.dllが無効になってる場合

ファイル「php.ini」をエディタで開いて、「extension=php_intl.dll」で検索をかけて、その行がコメントアウト(行頭がセミコロン「;」)されていたら、そのセミコロンを削除して、ファイルを保存します。
※「php.ini」は、例えばxamppを利用している場合は、「xampp\php」のフォルダ内にあります。

サーバを再起動して、さっきのURL(http://localhost/test/bookmarker/)のページを再読み込み(リロード)してみると、おそらくページが正常に表示されるはずです。

6)設定に問題がないか確認する

そのページの下の方にチェックリストがあるので、各項目問題ないかチェックします。
おそらく「Databese」の項目は、赤い×印がついているかと思いますが、これは「データベースの設定をまだしていない為です。

test\bookmarker\config
(test\bookmarkerは、各自CakePHPをインストールしたフォルダに読み替えて下さい)
フォルダ内の「app.php」をエディタで開いて、「Datasources」という所にある各項目(「username」「password」「database」の3項目)を設定すれば、以下の様にチェックがOKになると思います。

cakephpデータベース設定
cakephpデータベース設定

以上で、CakePHP3.xのインストールは完了です。
お疲れ様でした。

ここからは、CakePHP Cookbookのチュートリアルを見ながら、サンプルページを作ってみてくださいませ。

Twitterアプリ連携のアクセス権(権限)と許可する時の注意点


Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

Twitterのアプリ連携に関する情報をまとめておきます。
※アプリ連携は、サードパーティ製(Twitter社以外が提供する)Twitterクライアント、Twitterと連動したサービス、Twitterでログイン、等でよく利用されています。

■アプリのアクセス権(権限)について
「Twitterでログイン」等のリンクをクリックした時、次の様なページが表示されるかと思います。

Twitterアプリ連携認証許可ページ(読取専用)
Twitterアプリ連携認証許可ページ(読取専用)
Twitterアプリ連携認証許可ページ(読み書きDM)
Twitterアプリ連携認証許可ページ(読み書きDM)

これがアプリ連携の認証許可ページです。一つ目の画像が「読取専用(のページ全体)」、二つ目の画像が「読み書き及びDM(のページ左側部分のみ)」です。
このページには

  • 誰が(どの会社・組織・個人)が作ったアプリか(赤枠の部分)
  • アプリ(サイト)の説明とURL(青枠の部分)
  • このアプリ連携の認証では、何を許可するのか(緑枠部分)、許可しないのか(茶枠部分)

が書かれています。
緑色部分が多い程、許可する権限が多いということになります。(逆に茶色部分が多いほど、許可する権限は少なくなります。)

Twitterアプリ連携のアクセス権(許可する・しない)は、以下の3種類が存在します。

  1. 読取専用(Read only)
  2. 読み書き(Read and Write)
  3. 読み、書き、及びダイレクトメッセージ(Read, Write and Access direct messages)

各アクセス権で行えることをまとめた表は以下の通りとなります。

行えること / アクセス権 1)読取専用 2)読み書き 3)読み書き及びDM
ツイートを見る o o o
フォローしている人を見る o o o
新しくフォローする x o o
プロフィールを更新する x o o
ツイートする x o o
ダイレクトメッセージを見る x x o
Twitterのパスワードを見る x x x

各アクセス権を大雑把に説明すると以下の様なものとなります。

  1. 読取専用
    一番安全なアクセス権。
    アプリ連携を許可しても、ツイートやDM、新規フォローを「勝手に」されることはありません(出来ません)。
    サイト・アプリ制作者側としては、ログイン(認証)だけをTwitterに代わりにやって欲しい場合には、この権限が適していると思います。

  2. 読み書き
    DM送受信以外は行うことができるアクセス権。
    アプリ連携を許可し、もし悪用されてしまうと、勝手にツイートする、勝手に知らない人をフォローするといった被害にあう可能性があります。
    アプリ・サイトで何かを行って、その結果を自動的にツイートするサービスで利用されることが多いです。

  3. 読み、書き、及びダイレクトメッセージ
    一番出来ることが多い権限。
    サードパーティ製(Twitter社以外が提供する)Twitterクライアント用として使われることが多いです。(クライアントは、ツイート、新規フォロー、DMの送受信も出来ないと駄目な為)
    当然、アプリ連携を許可し、悪用されてしまった場合の被害も大きくなるので、このアクセス権が設定されている場合は、アプリ連携の許可を慎重にしましょう。

ただし、一番権限が大きいアクセス権でも「Twitterのパスワードを勝手に見られる・変えられる」ことはありません。(悪用されれば)勝手にツイートされたりする可能性はあるものの、完全に乗っ取られる訳ではないということです。

なお、アプリ連携はユーザ側がいつでも自由に「解除」することができます。
勝手につぶやかれたり、勝手にフォローが増えてる場合には、知らないアプリとアプリ連携していないかを調べ、解除することをおすすめします。

[参考]アプリ連携解除の方法・手順(当ブログの過去記事です)
Twitterのアプリ連携で覚えのないアプリと連携していないか確認・解除する方法

大切なのは、各アプリ連携のアクセス権の説明をしっかり読んだ上で、納得したら「アプリ連携を認証」、納得できなかった・信頼出来なかったら「キャンセル」する事かと思います。

また、もし勝手につぶやかれる様なことが発生した場合は、慌てずTwitterの設定「アプリ連携」ページを確認して、怪しい・見覚えの無いアプリがもしあったら「許可を取り消す」を押してアプリ連携を解除しましょう。

[参考]Twitterヘルプページ内のアプリ連携の説明ページ
サードパーティーアプリケーションとの連携を設定する/取り消す

アニメーション情報サイト「コノミー」を作ってます


Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/mildleaf/www/alc/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524

長らくウェブアラカルトを更新していませんでしたが、その間ずっとエンターテイメント情報サイト「コノミー」を作っていました。
いや、今も情報入力を続けている最中なので、作っています、が正しいですかね。

コノミー

将来的な構想は置いておくとして、現時点ではアニメーションに関する情報を扱う情報サイトとなっています。

6月5日時点では、
・テレビアニメ:約450作品(2012年夏放送開始以降の作品)
・アニメ制作関連会社:415社
・声優・俳優:約2,300人
・アニメ制作スタッフ(原作者、監督等):数百人程
の情報入力が終了した段階です。

アニメに関しては、
・作品名
・各局の放送開始日時
・公式サイト
・キャスト
・制作スタッフ、制作会社
等の情報が掲載されています。

また、自分が視聴できる局を選択すると、自分が見れる範囲でどんな新番組が放送されるかを検索できるサービスもあります。
(現時点では2014年春放送開始分が対象ですが、もうすぐ2014年夏放送開始分にも対応させる予定です。)

今は、ひたすら声優・俳優情報の入力を行っています。
その次は、制作スタッフ情報の入力を行い、その後に2012年春以前に放送開始された作品の情報入力を、徐々に過去にさかのぼりつつ進めていく予定です。

情報があまりに膨大なので、かなりの長丁場になりそうですが、コツコツ運営していきたいなと思っています。
よろしければ、ご利用下さいませ。