夜の歌

プログラミング、音楽、本について緩く書いていきます。

Laravelのログについて調査中①

Laravelのアプリケーションログの出力内容を調査。PHPエラーは、どのレベルのものが出力されているのか。また、その他にどのような内容が出力されるのか把握したいので調査。
■確認したいPHPエラー
 ・実行が中断
  ・E_ERROR:致命的なエラー
 ・実行は継続する
  ・E_WARNING:警告
  ・E_NOTICE:注意
  ・E_DEPRECATED:非推奨・廃止予定の記述
 ・実行されない
  ・E_PARSE:シンタックスエラー

参考記事
PHPのエラーの種類 - Qiita


Laravel5.7系を使っているので、5.5系と設定が違う模様。とりあえす、ログファイルへの出力内容が設定箇所を確認する必要がある。

Dockerの導入②

Dockerを導入中。調べた内容を、書いてみる。

・イメージ
Dockerの設定について書かれていて、コンテナを実行するためには、ビルドしないといけない

・コンテナ
ビルドしたイメージを使って、コンテナを起動する

イメージと、コンテナについての使い方は理解してきたのか。あとは、イメージとコンテナの詳細な内容を理解したい。

Dockerの導入①

今、Vagrantを使ってローカル環境の構築を行なっているけど、どうしても動作が重いからDockerへ移行を検討中。Laravelも使うから、Laradockを使ってやることにした。

laradock.io

Laradockのページに記載されている手順通りにやったが、Laravel側からMySQLへの接続が上手くいかない。どうやら、MySQLのバージョンが8系に上がって、セキュリティが強化されたのが原因ぽい。

blog.websandbag.com
MySQLのバージョンを固定するしかないのか。

PHPのinterfaceの理解①

PHPインターフェイスをどの場面で使えばいいのか分からなかったので、サンプルコードを書いてみた。

サンプルコードの内容は、国の情報を扱うクラスがあって、そのクラスには2つのインターフェイスを設定する。1つ目のインターフェイスは、言語を扱うメソッドを管理する。2つ目のインターフェイスは、宗教を扱うのメソッドを管理する。

<?php
/**
* 言語を扱うメソッドを管理するインターフェイス
*/
interface Language{
    /*
    * 言語を取得する
    *
    */
    public function getlanguage();
}

/**
* 宗教を扱うメソッドを管理するインターフェイス
*/
interface Religion{
    /*
    * 宗教を取得する
    *
    */
    public function getReligion();
}

/**
* インドの情報を扱うクラス
*/
class India implements Religion,Language
{
    /*
    * 言語を取得する
    *
    * return string
    */
    public function getlanguage(){
        return 'ヒンディー語';
    }

    /*
    * 宗教を取得する
    *
    * return string
    */
    public function getReligion(){
        return 'ヒンドゥー教';
    }
}


$india = new India();
echo $india->getlanguage() . "\n";
echo $india->getReligion();


出力

$ php test.php
ヒンディー語
ヒンドゥー教


インターフェイスは、ある情報を扱うクラスに必須のメソッドを実装させるために使う感じか。ちょいと理解。

※参考 qiita.com

開発日記④

今、Laravelの本を読んでいる。

PHPフレームワーク Laravel Webアプリケーション開発 バージョン5.5 LTS対応

PHPフレームワーク Laravel Webアプリケーション開発 バージョン5.5 LTS対応

何のために読んでいるかというと、Laravelのアーキテクチャを理解するために読んでいる。じゃあ、何故、理解する必要があるのか。それは、Laravelを使いこなして、Webアプリケーションを作りたいから。

じゃあ、本をただ読むだけで、Laravelのアーキテクチャを理解することはできるのか。それは、難しいと思う。だから、本を読むだけじゃなくて、自分なりに文章を書いてみるといいかもしれない。それと、実装してみる。ちょい、ちょい進めていこう。

あと、今年は、アウトプットの質を高めたい。どうにかしていこう。

開発日記③

相変わらず、音楽レビューサイトを作り直し中。今は、UIをいじっているけど、なかな綺麗な形にはならない。ただ、HTMLとCSSの仕様の理解が進んできてて実装自体は楽しい。デザインについて、参考になる本を買ったので、色々と試してみる。

誰も教えてくれないデザインの基本

誰も教えてくれないデザインの基本

結局、何をゴールにして、Webアプリケーションを作っていくか。難しいけど、試行錯誤は楽しいところ。効率は、目指すのは当たり前だけど、とりあえずやってみないと。やってみて、結果をみて、考えて、修正して、再度やってみる。その連続。


今、他に『 体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践』を読んでいる。読み終えたら、感想書きたい。

開発日記②

今、色々とやりたいことがあるけど、順番は上手くやりたいな。一番はLaravelの本を読んで、Laravelのことを理解していく。他に、GItのコマンドの確認、ターミナルの仕組み、MySQLについてなどをやっていきたい。

開発日記①

会社ではVagrantを使ってローカル開発環境を作り、開発している。Webサーバーは、Laravelのビルトインサーバー。昨日、ビルトインサーバーを終了しないで、Vagrant haltを行なった。そして、Vagrant upをして仮想環境を立ち上げて、ビルトインサーバーを動かそうとしたら、動かなかった。色々と試した結果、ターミナルを再起動をしたら、ビルドインサーバーが動いた。いやぁ、原因を追求したい。

ターミナルとは何か、など、調べると面白そう。

格安simに変更

昨日、softbankからlinemobileに変更した。手続きの手順を間違ってしまい、softbankショップでsimロック解除を行なった。その事務手数料として、3000円かかった。

なぜ、そうなったか。simロック解除を行う前に、linemobileの利用開始してしまったためだ。どうやら、linemobileの利用開始をすると、softbankと契約が切れるみたいだ。softbankと契約が切れるとMy SoftBankが使えなくなり、My SoftBankから無料で行えた、simロック解除も行えなくなる。知らなかった。。もう少し、流れを確認して、手続き行えばよかった。

さて、linemobileを使えるのは楽しみだ。契約のページは情報量が少なくて見やすいし、参考になる。

Laravel③

7月から新しい会社に入って、Laravelを使っている。今まで使ったことがあるCakePHPよりは、個人的に使いやすい気がする。まだ、Laravel独自の機能を使えこなせているかといえば、全然まだまだ。もう少し、使いこなしたいところ。

一旦、今日はこれくらいで。