Papagram

PHP/Laravelの役立つ情報を発信します。最近PythonとReactの勉強も始…

Papagram

PHP/Laravelの役立つ情報を発信します。最近PythonとReactの勉強も始めました。 株式会社パパグラムの代表もやっています。https://papagram.co.jp お仕事のご依頼ご相談はs.miyata@papagram.co.jpまでご連絡ください。

マガジン

  • LaravelでCRUDシステムを構築する

    Laravel10を用いてCRUDシステムを構築します。実装からテストまでやります。

  • PHPUnit入門

    PHPのテスティングフレームワークPHPUnitの基本の解説記事です。

  • PHPでデータベースをCRUD操作する

    PHPでデータベースをCRUD操作するシステムをゼロから作る記事を集めました。誰かのお役に立てば幸いです。

記事一覧

Laravelでログに出力されない500エラーが発生した時に疑う場所

 先日、Laravel10で作ったとあるシステムを本番公開しようとしたら、500エラーが発生し解決に手間取りましたので共有させていただきたいと思います。  composer install…

Papagram
5か月前
4

LaravelでCRUDシステムを構築する②

 前回の記事で作成したメンバー管理システムのテストコードを作成します。 PHPUnitの基本に関しては下記の記事を参考にしてください。 筆者の開発環境PC:Apple M1 チッ…

Papagram
7か月前
2

LaravelでCRUDシステムを構築する①

 下記の記事で作った素のPHPによるユーザー管理のCRUDシステムをLaravelで作り直します。フレームワークを使用することにより、フレームワークの提供する独自のメソッドや…

Papagram
7か月前
3

PHPでデータベースをCRUD操作する④

 前回まででCRUD操作は完成しましたが、このままでは少々システムが使いづらいので、少しでも使いやすくなるように改良します。 筆者の開発環境PC:Apple M1 チップ搭載M…

Papagram
7か月前
2

PHPでデータベースをCRUD操作する③

 前回の記事でユーザー登録機能と一覧表示機能を作成しました。今回は更新機能および削除機能、詳細参照機能を作成します。 筆者の開発環境PC:Apple M1 チップ搭載MacBo…

Papagram
7か月前
1

PHPでデータベースをCRUD操作する②

 前回はプロジェクトの事前準備として、データベースの作成、テーブルの作成、プロジェクトフォルダの作成、ドキュメントルートの変更を行いました。  今回からCRUD操作…

Papagram
7か月前
4

PHPでデータベースをCRUD操作する①

 以前、MySQLをSQLから直接操作する記事を書きました。今回はPHPからデータベースをCRUD操作してみます。PHPとHTMLを用いることにより、ユーザーの端末からユーザー自身で…

Papagram
7か月前
3

PHPUnit入門②

よく使うアサーションを紹介したいと思います。入門①は下記です。 筆者の開発環境PC:Apple M1 チップ搭載MacBook Air OS:macOS Ventura 13.6 MAMP:6.8 PHP:8.2.0 PHP…

Papagram
7か月前
1

PHPでオートロードする方法

 通常、クラスファイル等をインクルードするには下記のようにrequire_once等を使用し、必要に応じて1つずつ読み込みます。 require_once __DIR__ . 'src/User.php';requ…

Papagram
7か月前
1

PHPUnit入門①

 ユニットテストと呼ばれるテストの書き方を解説します。ユニットテストとは「機能」に焦点を当てて行うテストです。具体的には関数やメソッドの返り値をテストすることに…

Papagram
7か月前
6

時短!VSCodeショートカット(Windows編)

ショートカットを覚えてラクしましょう。 Mac編はこちらです。 ファイルの検索Ctrl + p ファイルの新規作成Ctrl + n ファイルを閉じるCtrl + w ファイルを一括で閉じる…

Papagram
7か月前

Windows版MAMP環境にLaravelをインストールする

 PHPのWebフレームワークの中で一番人気のLaravel(ララベル)をMAMP環境で使えるようにするまでの解説です。Laravelは筆者も業務で使用しており大変お気に入りです。  …

Papagram
7か月前
2

SQLでMySQLをCRUD操作する

 データベースとはデータをまとめて保管しておく箱のようなものです。有名なところではマイクロソフトのOffice製品の一つであるAccessがあります。データベースはデータの…

Papagram
8か月前
6

MAMPのmysqlコマンドにパスを通す(Windows編)

WindowsのMAMPに同梱されたmysql.exeにパスを通します。 Mac編はこちらです。 筆者の開発環境PC:DELL Inspiron 15 3511 OS:Windows 11 Home バージョン22H2 MAMP:5.0.5…

Papagram
8か月前
1

MAMPのmysqlコマンドにパスを通す

 MAMPに同梱されたmysqlコマンドにパスを通します。少し内容が難しいです。  Windows編はこちらです。 筆者の開発環境PC:Apple M1 チップ搭載MacBook Air OS:macOS V…

Papagram
8か月前
3

PHPでエクセル操作を自動化する②

 前回は「PhpSpreadsheet」をインストールして、サンプルコードが動作するところまで解説しました。今回は実例を交えて、エクセル操作の基本を解説していきます。  筆者…

Papagram
8か月前
3
Laravelでログに出力されない500エラーが発生した時に疑う場所

Laravelでログに出力されない500エラーが発生した時に疑う場所

 先日、Laravel10で作ったとあるシステムを本番公開しようとしたら、500エラーが発生し解決に手間取りましたので共有させていただきたいと思います。
 composer installやマイグレーションは事前に済ませており、時間になったらシンボリックリンクを公開領域に張るだけのはずでした。しかし、いざシンボリックリンクを張ってトップページにアクセスしてみると500エラーが発生しました。
 AP

もっとみる
LaravelでCRUDシステムを構築する②

LaravelでCRUDシステムを構築する②

 前回の記事で作成したメンバー管理システムのテストコードを作成します。

PHPUnitの基本に関しては下記の記事を参考にしてください。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Sonoma 14.1(23B74)
MAMP:6.8
PHP:8.2.0
Laravel:10.29.0

大見出し LaravelにはPHPUnitがはじめから含まれ

もっとみる
LaravelでCRUDシステムを構築する①

LaravelでCRUDシステムを構築する①

 下記の記事で作った素のPHPによるユーザー管理のCRUDシステムをLaravelで作り直します。フレームワークを使用することにより、フレームワークの提供する独自のメソッドや関数、コマンド等を覚える必要がありますが、短いコードで素早く開発することが可能になります。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Sonoma 14.1(23B74)
MA

もっとみる
PHPでデータベースをCRUD操作する④

PHPでデータベースをCRUD操作する④

 前回まででCRUD操作は完成しましたが、このままでは少々システムが使いづらいので、少しでも使いやすくなるように改良します。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
PHP:8.2.0

エラーハンドリングエラー表示の制御

 本番環境ではエラーが発生した時にエラーの情報が画面に表示されると危険なのでエ

もっとみる
PHPでデータベースをCRUD操作する③

PHPでデータベースをCRUD操作する③

 前回の記事でユーザー登録機能と一覧表示機能を作成しました。今回は更新機能および削除機能、詳細参照機能を作成します。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
PHP:8.2.0

ユーザー編集フォームの作成UsersControllerにeditメソッドを追加

 UsersController.php

もっとみる
PHPでデータベースをCRUD操作する②

PHPでデータベースをCRUD操作する②

 前回はプロジェクトの事前準備として、データベースの作成、テーブルの作成、プロジェクトフォルダの作成、ドキュメントルートの変更を行いました。
 今回からCRUD操作のための諸機能を作成していきます。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
PHP:8.2.0

基本機能の実装システムを稼働させる基本的な

もっとみる
PHPでデータベースをCRUD操作する①

PHPでデータベースをCRUD操作する①

 以前、MySQLをSQLから直接操作する記事を書きました。今回はPHPからデータベースをCRUD操作してみます。PHPとHTMLを用いることにより、ユーザーの端末からユーザー自身でデータを操作することが可能になります。CRUD画面をユーザーに提供することはWebシステム開発の第1歩です。

筆者の環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13

もっとみる
PHPUnit入門②

PHPUnit入門②

よく使うアサーションを紹介したいと思います。入門①は下記です。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
PHP:8.2.0
PHPUnit:10.4.1

2つの値が等しいことを検証するassertSame()メソッドを使います。厳密な型比較になります。

$this->assertSame('hoge

もっとみる
PHPでオートロードする方法

PHPでオートロードする方法

 通常、クラスファイル等をインクルードするには下記のようにrequire_once等を使用し、必要に応じて1つずつ読み込みます。

require_once __DIR__ . 'src/User.php';require_once __DIR__ . 'src/Hoge.php';(以下続く)

composer.jsonのautoload機能を使えばクラスファイルのオートロードが実現できます。

もっとみる
PHPUnit入門①

PHPUnit入門①

 ユニットテストと呼ばれるテストの書き方を解説します。ユニットテストとは「機能」に焦点を当てて行うテストです。具体的には関数やメソッドの返り値をテストすることになります。
 テストを書くメリットは一度テストを書いてしまえば何度でもテストを自動で実行できて、関数やメソッドの中身を修正する時に修正の前後で結果が変わっていない(意図した通りである)ことが保証できることです。動いているプログラムを修正する

もっとみる
時短!VSCodeショートカット(Windows編)

時短!VSCodeショートカット(Windows編)

ショートカットを覚えてラクしましょう。
Mac編はこちらです。

ファイルの検索Ctrl + p

ファイルの新規作成Ctrl + n

ファイルを閉じるCtrl + w

ファイルを一括で閉じる# Ctrlキーを押しながらk,wと続けて入力Ctrl + k, w

最後に閉じたファイルを開くCtrl + Shift + t

タブの移動Alt + 左右の矢印キー

直前のタブに移動Ctrl +

もっとみる
Windows版MAMP環境にLaravelをインストールする

Windows版MAMP環境にLaravelをインストールする

 PHPのWebフレームワークの中で一番人気のLaravel(ララベル)をMAMP環境で使えるようにするまでの解説です。Laravelは筆者も業務で使用しており大変お気に入りです。
 ちなみにフレームワークとは、Webアプリケーショの開発によく用いられる機能を満載したプログラムのひな形のことです。例えば認証機能(ログイン機能)は大部分のWebシステムに必須の機能ですが、仕組みはどれも似通ったもので

もっとみる
SQLでMySQLをCRUD操作する

SQLでMySQLをCRUD操作する

 データベースとはデータをまとめて保管しておく箱のようなものです。有名なところではマイクロソフトのOffice製品の一つであるAccessがあります。データベースはデータの取り出しや変更に便利で、ほとんどのシステムやWebサービスに使われています。
 今回は無償で使えるMySQLというデータベースを用いてデータベースの操作の基本を解説したいと思います。MySQLはMAMPに含まれていますので、MA

もっとみる
MAMPのmysqlコマンドにパスを通す(Windows編)

MAMPのmysqlコマンドにパスを通す(Windows編)

WindowsのMAMPに同梱されたmysql.exeにパスを通します。
Mac編はこちらです。

筆者の開発環境PC:DELL Inspiron 15 3511
OS:Windows 11 Home バージョン22H2
MAMP:5.0.5
MySQL:5.7.24

mysql.exeの場所 MAMPに同梱されたmysql.exeの場所は下記になります。今回はここにパスを通します。

C:\M

もっとみる
MAMPのmysqlコマンドにパスを通す

MAMPのmysqlコマンドにパスを通す

 MAMPに同梱されたmysqlコマンドにパスを通します。少し内容が難しいです。

 Windows編はこちらです。

筆者の開発環境PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
MySQL:5.7.39

mysqlコマンドの場所MAMPに同梱されたmysqlコマンドの場所は下記になります。

/Applications/

もっとみる
PHPでエクセル操作を自動化する②

PHPでエクセル操作を自動化する②

 前回は「PhpSpreadsheet」をインストールして、サンプルコードが動作するところまで解説しました。今回は実例を交えて、エクセル操作の基本を解説していきます。 

筆者の開発環境PC:DELL Inspiron 15 3511
OS:Windows 11 Home バージョン22H2
PHP:8.0.1
Office:Microsoft Office Home and Business 2

もっとみる