[Laravel] 複数のDBにアクセスする方法

  1. config/database.phpにDB接続を複数定義
  2. クエリービルダーではDB:connection(‘DB接続’)->select(…)
  3. Eloquentではモデルクラスに$connection=’DB接続’

参考サイト

[Laravel]Laravelで別々のDB(MySQL)に接続させる方法 – Qiita
http://qiita.com/qiita-kurara/items/2e3efb4ccbb2489b05c3

Database: Getting Started – Laravel – The PHP Framework For Web Artisans
https://laravel.com/docs/5.4/database#using-multiple-database-connections

Eloquent: Getting Started – Laravel – The PHP Framework For Web Artisans
https://laravel.com/docs/5.4/eloquent#eloquent-model-conventions

[PHP] エラーをHTML出力の一部として画面に出力する

ローカルで開発していた案件を本番環境にディプロイしたら500エラー。エラーログへのアクセスも制限されていたりすると、原因究明に時間がかかることもある。

そんなときには、とりあえずエラーをHTML出力の一部として画面に出力するようにして、かつ、エラー出力レベルをE_ALLにしておけば、PHPが吐き出すエラーを全てブラウザ画面上に表示できる。不具合の原因究明の助けになる。

参考サイト

PHP: 実行時設定 – Manual
http://php.net/manual/ja/errorfunc.configuration.php

PHP: error_reporting – Manual
http://php.net/manual/ja/function.error-reporting.php

PHP: ini_set – Manual
http://php.net/manual/ja/function.ini-set.php

[Git] BitBucketにPushして自動でサーバーにデプロイする

以下のツールのお世話になる。

alixandru / bitbucket-sync — Bitbucket
https://bitbucket.org/alixandru/bitbucket-sync/overview

参考サイト

BitbucketにGit PUSHしてサーバーに自動でデプロイしちゃうよ! | ザ サイベース
http://thesaibase.com/server/bitbucket-git-push-deploy

レンタルサーバに自動デプロイ – Laravel学習帳
http://laraweb.net/environment/1080/

[PHP] PSR コーディング規約

参考サイト

PHP-FIG — PHP Framework Interop Group
http://www.php-fig.org/

PHP Standard Recommendation – Wikipedia
https://en.wikipedia.org/wiki/PHP_Standard_Recommendation

PHPコーディング規約まとめ – Qiita
http://qiita.com/hshimo/items/04be1f432240c58300f4

PHPのコーディング規約 PSR-0、PSR-1、PSR-2、PSR-3とは | 9ensanのLifeHack
http://9ensan.com/blog/programming/php/php-psr-coding-standards/

【PSR】PHPの標準コーディング規約 – Qiita
http://qiita.com/katsukii/items/e68183f14407722de9cc

[PHP] 名前空間とクラスのオートローディング

参考サイト

PHP: クラスのオートローディング – Manual
http://php.net/manual/ja/language.oop5.autoload.php

PHPのオートロード(autoload) – Qiita
http://qiita.com/atwata/items/5ba72d3d881a81227c2a

PHP: FAQ: 名前空間について知っておくべきこと – Manual
http://php.net/manual/ja/language.namespaces.faq.php

PHP V5.3 の名前空間を利用して、理解しやすく保守の容易なコードを作成する
https://www.ibm.com/developerworks/jp/opensource/library/os-php-5.3namespaces/

PHPのオブジェクト指向入門 | オブジェクト指向PHP.NET
http://www.objective-php.net/basic/namespace

[Vagrant] ダウンロードしたboxの展開に失敗する場合の対処法

Vagrantをインストールし直したら以下のエラーが出るようになった。複数のBoxを試したけど必ずエラー。どうやら自分の環境の問題っぽい。

ネットを検索したら、Vagrant同梱の解凍ソフトを入れ替えて解決した例が見つかった。なぞってやってみたら自分も解決した。

Error while adding Vagrant box in windows xp · Issue #3869 · mitchellh/vagrant · GitHub
https://github.com/mitchellh/vagrant/issues/3869#issuecomment-48058728

my solution was to download the basic_bsdtar.exe from here http://sourceforge.net/projects/mingw/files/MinGW/Extension/bsdtar/ and rename it to bsdtar.exe and place it in C:\HashiCorp\Vagrant\embedded\gnuwin32\bin\

結果オーライだけど原因はわからず。

[Vagrant] Warning: Authentication failure. Retrying… が繰り返し表示される場合の対処

vagrant upでWarning: Authentication failure. Retrying…が繰り返し表示される問題に直面。

対処法

最初は認証用の鍵ファイルに問題があると思って調べていたのだけど、以下のページによるとどうやらVagrantのバグっぽい。

Vagrant 1.8.5でLinux boxをvagrant upするとエラーが出る件について – 素敵なおひげですね
http://stknohg.hatenablog.jp/entry/2016/07/26/190330

[インストール先]\embedded\gems\gems\vagrant-1.8.5\plugins\guests\linux\cap\public_key.rbの56行目に
chmod 0600 ~/.ssh/authorized_keys
を追加してからVMを再作成してやれば直ります。

説明に従って修正したら問題解決。感謝。

[Vagrant] snapshotコマンドで仮想マシンの状態を保存する

スナップショットの保存

snapshotコマンドは仮想マシンが停止しているときに実行。

スナップショットの一覧

スナップショットのリストア

スナップショットの削除

参考サイト

VagrantのSnapshot機能で仮想マシンの状態を保存/復元しよう | WEB ARCH LABO
http://weblabo.oscasierra.net/vagrant-snapshot/