プログラム関係の備忘録。技術系記事1000記事以上を目指すブログ
CATEGORY

PHP

  • 2018年9月1日
  • 2018年9月8日

【Laravel】アプリケーション構成が意味不明なときのTips

Laravelでの開発案件に参加して環境構築をしていく際にどんなコマンドを打ってどこの設定を書き換えて~というTipsです。 Laravel自体の環境構築については以下記事で解説しています。 Ubuntu16.4にPHP7.2を入れ、Laravelをインストールするまでの手順 環境変数の設定 Laravelのアプリケーションのディレクトリ構成は、どんなプロジェクトでも当然だいたい同じようになってい […]

  • 2018年7月9日

【Laravel5.6】中間テーブルのデータを取ってくるときのポイント

Laravelを使った中間テーブル取得方法のポイントをまとめます。 前提 テーブル同士の関係が多対多のデータを取得したい。 多対多の関係性についての説明は省略し、実際にlaravelで中間テーブルのデータを扱う方法を書きます。 例として、商品テーブル(items)と注文テーブル(orders)を扱う場合を想定。 モデルの定義 リレーションを宣言するために、それぞれのテーブルのモデルに以下を追記する […]

  • 2018年7月8日

【Laravel5.6】画像ファイルアップロードについてのポイントまとめ

Laravelで画像ファイルをアップロードし、DBに登録する処理方法についてのポイントをまとめます。 例としてuserテーブルのimageカラムにアップロードしたファイル名を登録する想定で書いていきます。 blade bootstrapと組み合わせると以下のような感じ ファイルを扱う場合はformタグにenctype=”multipart/form-data”を加える。 フ […]

  • 2018年5月30日
  • 2018年8月11日

【Laravel5.6】DBに初期データを入れられるシーディングについて

LaravelでMigrationを使ったDBのバージョン管理をするなら合わせて覚えておきたいのがシーディングについて。 シーディングを使えば、別端末に環境を作る場合などでDBの構築と一緒にテストデータも設定することができる。 シーダーを生成する シーダーの名前は好きに決めることができるが、Laravelの書き方に合わせると (テーブル名)TableSeeder といった表記になる。 上記コマンド […]

  • 2018年5月29日
  • 2018年5月29日

【Laravel5.6】Eloquent利用時にまず知っておきたいこと

使い始めのときに便利すぎて逆に混乱することが多かった為、ある程度触った今改めてまとめ。 過去の記事内容との重複箇所あり。 【Laravel】Eloquentを使ったデータベースの操作の基礎 とりあえずこういうものと覚える箇所 公式をちゃんと読んでおくとORMのEloquentの旨みが増える。 モデル名とテーブル名の関係 Eloquentでは明示的に指定しない限り、クラス名を複数形の「スネークケース […]

  • 2018年5月22日
  • 2018年5月22日

【Laravel5.6】Carbonで指定の時間を足して結果を取得する

はじめに 時間と時間を足す計算がcarbonを使うと2行で済んで楽だったという話。 タイトルが分かりにくいので具体的に今回したいこと。 フォームから以下を入力 ・日付(yyyy/MM/dd) ・開始時間(HH:mm) ・所要時間(分) ・DBには開始日時と終了日時がyyyy/MM/dd HH:mm:ssの形でインサート。 当初は開始時間と終了時間を入力する仕様だったが、所要時間を入力するほうが何か […]

  • 2018年5月19日
  • 2018年5月22日

【Laravel5.6】Log出力と便利な監視方法

今回すること laravel5.5までと仕様が変わっているようなので、5.6の環境でLogファイルを出力するまでの手順をざっくり記載。 また、出力されるLogを監視するときのlessコマンドの使い方。 Laravel5.6でのLog出力 出力の設定 config/logging.phpの以下箇所でログ出力の設定ができる。 デフォルトではLog Channelsにstackを指定していて、stack […]

  • 2018年5月8日

【laravel】blade内にjQueryを書くと「$ is not a function」とのエラーになる場合

問題点 laravelのblade内にjQueryを書くと「$ is not a function」とのエラーになる場合。 解決策① jQuery.noConflict()メソッドを追加する。 上記はlaravelに限らず他でも有効。 適用前 適用後 解決策② laravelに沿った対処法という観点だとこちらのほうがもっといい。 bladeにインラインで使うのではなく、「public >> js」 […]

  • 2018年4月30日
  • 2018年5月1日

【Laravel】Eloquentを使ったデータベースの操作の基礎

はじめに Laravelでデータベースを操作する方法は主に、DBクラスを利用したものと、Eloquentを利用したものがある。 今回は、Laravel特有のORMであるEloquentを使い、楽にデータベースを操作する方法をおさらい。 ORMとは? データベースとPHPのオブジェクトの間の橋渡しのような仕組みをもつ機能のこと。 ORMを使うことで、互換性のないデータを自動的に変換し、シームレスにデ […]