Copy & Paste Engineer

Tag

PHP

PHP に関する技術記事の一覧です。Copy & Paste Engineerで公開している実装メモ、検証、トラブルシュートをまとめています。

【PHP】openssl_error_string で OpenSSL のエラー内容を取得する

PHP の openssl_error_string の使い方、複数エラーの取得方法、OpenSSL エラー調査のポイントを実例つきで解説

【PHP】Phalcon DI の get と getShared の違い

Phalcon の DI コンテナで使う get と getShared の違いを、インスタンス生成タイミングと使い分けの観点で実例つきで解説

Google ColabでPHPプログラミングを始める方法

Google ColabでPHPをを動かす!

PHPコマンドラインオプション「php -r」の活用

PHPはウェブ開発で広く使われている言語ですが、コマンドラインから直接PHPコードを実行する機能も提供しています。「php -r」オプションの使い方の紹介。

PHP でグラフィックをやってみる

PHP でグラフィックをやれるか気になってやってみました!

【GitHub】GitHub Actionsを使用してPHP Webサーバーを起動する方法

GitHub Actionsを使用してPHP Webサーバーを起動し、その動作を確認する方法について説明します。

【PHP】共有メモリの活用: キャッシュクラスの作成

PHP で共有メモリの活用方法としてキャッシュクラスの作成を作成してみました。

【PHP】CLIで簡単にテキストに色を付ける方法

PHP CLI で簡単にテキストに色を付ける方法

【PHP】Webクローラーを作ってみた

PHP で自作のWebクローラーを作ってみた

【PHP】ob_flushを使用して1秒毎に時刻を表示する方法

PHP で ob_flush を使用して1秒毎に時刻を表示する方法

【Javascript】Stream API を使って PHP から現在時刻を表示するサンプル

JavaScriptのStreams APIとPHPを使って、1秒ごとに時刻を更新する方法を説明します。

【PHP】AWSのlambdaを実行する

PHPでAWSのlambdaを実行する方法メモ

【PHP】ブラウザで実行できるPHP環境のご紹介

PHPをブラウザで実行できるPHP環境のご紹介

【PHP】DOMDocument で発生する文字化けの対策方法

PHP DOMDocument を利用した際に発生する文字化けの対策方法です。

【PHP】DOMDocument を利用して HTMLを解析する

PHP で DOMDocument を利用して HTMLを解析する

【Laravel】SeederをDBから逆生成する

Seederを一々作るのも面倒なので一気に逆生成する方法

【PHP】XMLをパースして配列にする方法

PHP でXMLをパースして配列にする方法

【Laravel】大量INSERTする際に chunk を使おう

Laravel で大量INSERTする際にエラーが出たり、遅くなったりします。そういう時は chunk を使用します。

【Laravel】バリデーションに無名関数を使用してバリデーションを行う

Laravel でバリデーションに無名関数を使用してバリデーションを行う方法メモ

【Laravel】l5-swagger でAPI仕様書を簡単に作ろう

Laravel で l5-swagger を使用して簡単にSwaggerのAPI仕様書を作る

【Laravel】Class Redis Not Found が出た際の対処方法

LaravelでRedisを使用しようとしたら Class Redis Not Found が出た際の対処方法

【PHP】静的解析ツール phpstan を使って静的解析をしてみる。

PHP の 静的解析ツール phpstan を使って静的解析をしてみる。

【Laravel】データベースに影響が出ないようにテストする

Laravel には各種テスト用の trait が用意されていて、それらを使用することでデータベースに影響が出ないようにテストができます

【Laravel】APIのエラーメッセージ「The given data was invalid.」を多言語か対応する

Laravel のAPIのエラーメッセージ「The given data was invalid.」を多言語か対応する。

【Laravel】日本語などのローカル言語ファイルを取得する

Laravel は英語の言語ファイルがデフォルトで適用されていますが日本語化するのが面倒くさい。そういう時に日本語などのローカル言語ファイルを簡単に取得、適用する方法

【Laravel】PHPUnit 419 エラー対応

Laravel の PHPUnitで 419 エラーが出た際の対応方法メモ

【PHP】クラス定数の存在チェック

PHPでクラス定数の存在チェックをする方法

【Laravel】データ保存時に created_by, updated_by, delete_by を自動的に追加する方法

Laravelでデータ保存時に created_by, updated_by, delete_by の登録者、更新者、削除者を自動的に追加する方法

【Laravel】マイグレーションをDBから逆生成する

DBとマイグレーションファイルを修正するのも面倒なのでLaravelでマイグレーションをDBから逆生成する方法

【Laravel】DBからモデルを逆生成する

DBを修正するとモデルの修正しなければいけなくて面倒なのでLaravelでDBからモデルを逆生成する方法

【Laravel】複数のSQLを一括実行する DB::unprepared

Laravel で複数のSQLを一括実行する DB::unprepared を使用する

【PHP】CLI で入力がなかったらタイムアウトさせる方法

PHP で CLI で入力を求めた際、一定時間に入力されなかったらタイムアウトさせる方法

【Laravel】phpunit 実行時にマイグレーションを1回だけ実行する

Laravel で phpunit 実行時にテスト側にマイグレーションを一々実行させると時間がかかるのでマイグレーションを1回だけ実行する

【Laravel】コマンドの実行制限をさせる方法

Laravel側で用意されているコマンドをたとえば本番環境で実行させたくない時などに使えるコマンドの実行制限をさせる方法です。

【Laravel】使用していないModel, DBのテーブルを特定するコマンドを自作

Laravelで使用していないModel, DBのテーブルを特定するコマンドを自作しました。リファクタの時に役立ちます!

【Laravel】バージョンを指定してインストールする

Laravelでバージョンを指定してインストールするためのメモ

【Laravel】使用していないController, Methodを特定するコマンドを自作

Laravelで使用していないController, Methodを特定するコマンドを自作しました。リファクタの時に役立ちます!

【Laravel】Command を Contoroller や Command から実行する方法

Laravel で Command を Contoroller や Command から実行する方法メモ

【Laravel】Controller を Controller や Command から実行する方法

Laravel で Controller を Controller や Command から実行する方法メモ

【Laravel】Laravel + PHPUnit で RuntimeException: A facade root has not been set. が出た時の対処方法

Laravel + PHPUnit で RuntimeException: A facade root has not been set. が出た時の対処方法メモ

【PHP】composer dump-autoload 「A non-empty PSR-4 prefix must end with a namespace separator」エラー解決

composer dump-autoload 実行時に「A non-empty PSR-4 prefix must end with a namespace separator」エラーが発生した際の解決メモ

【PHP】CLIで進捗表示を行うプログレスバーを出力する方法

PHP の CLI で進捗表示を行うプログレスバーを出力する方法メモ

【Laravel】mysql strict の注意点

Laravel では mysql への接続オプションとしてstrict(厳密)モードがあり気をつける必要があります。

【PHP】半角、全角を判断して文字幅を計算する mb_strwidth

PHPで半角、全角を判断して文字幅を計算する mb_strwidth の使用方法。

【PHP】画像に文字を追加する

PHPで画像に文字を追加します。

【PHP】PHP Fatal error: Constant expression contains invalid operations 解決方法

PHP Fatal error: Constant expression contains invalid operations が出たので解決方法メモ

【PHP】PHP Fatal error: Uncaught TypeError: Unsupported operand types 解決方法

PHP Fatal error: Uncaught TypeError: Unsupported operand types が出たので解決方法メモ

【PHP】引数にint型を指定しているとint型を超えた値を渡すとエラーになる

PHPで関数やメソッドにint型を指定しているとint型を超えた値を渡すとエラーになります。

【Laravel】Mysql とのコネクションをプーリングさせる方法

Laravel で Mysql とのコネクションプーリングを行う方法メモ

【Docker】volume をマウントする時に特定の一部ディレクトリを除外する

Docker+PHP 環境が遅かったので vendor フォルダを同期しないように volume をマウントする時に特定の一部ディレクトリを除外して対応したメモ

【Laravel】ログを Slack に通知する

Laravel でログを Slack に通知する

【PHP】URLを解析する parse_url

URL を解析することが出来る parse_url

【PHP】github のリポジトリから直接 composer require でインストール

github のリポジトリから直接 composer require でインストールするメモ

PhpSpreadsheet を少しでも軽くする方法

PhpSpreadsheet を少しでも軽くする方法メモ

【Laravel】CloudWatch Logs にログを出力する方法

Laravel で AWS の CloudWatch Logs にログを出力する方法

【PHP】ignore_user_abortで接続が切れても処理を実行させ続ける

ignore_user_abortを使用すると接続が切れても処理を実行させ続ける事が出来ます。

【PHP】PHPでツイートする

PHPで簡単にツイートをする方法

【PHPUnit】PHPUnit This element is not expected..

PHPUnit を実行すると This element is not expected.. が出る

【PHP】PHPで簡単スクレイピング

PHPで簡単にスクレイピングを始める

【Laravel】ログをJSON化する方法

LaravelでログをJSON化する方法

【Laravel】ログにログ出力元のファイル情報などを出力する

Laravelで簡単にログにログ出力元のファイル情報などを出力する方法

【PHP】柔らかいプロパティの扱い __set __get の罠

柔軟な PHP の柔らかいプロパティの扱いでマジックメソッド __set __get 罠

【GitHub】GitHub Actions で PHP を自動整形させる

GitHub Actions で PHP_codesniffer を利用して PHP の自動整形させる方法。

【PHP】PHP_CodeSniffier を使用してコードをPSR(コーディング規約)に基づいて整形する

PHP_CodeSniffier を使用してコードをPSR(コーディング規約)に基づいて整形する

【GitHub】GitHub Actions を利用して PHPUnit を実行する

GitHub Actions を利用して PHPUnit を実行してみました。

【PHP】mkdir でファイル作成時に複数階層を一気に作る

PHPで mkdir でファイルを作成する際に複数階層のディレクトリを一気に作る方法メモ

【PHP】厳密な型付けをしよう

PHPで厳密な型付けをしてみましょう。

composer の package を自作してみる

composer の package を自作してみました。

【PHP】RSSを取得・解析する

PHPを使用して RSS を取得、解析します。

【PHP】TCPDF で HTML 上で改ページを行う

PHP の PDF 出力用ライブラリ TCPDF で HTML 上で改ページを行う方法

【PHP】関数 empty は罠

PHPの関数 empty はとても使いやすく入力値の検査などに使いやすいですがこれが罠なんです。

【PHP】配列を扱う時にとても有用な array_column

PHPで配列を扱う時にとても有用な関数 array_column をご紹介。

【PHPUnit】メソッド内で連続でPOST、GETなどの送信すると前のログイン情報を引き継いでしまう?

PHPUnitでメソッド内で連続でPOST、GETなどの送信すると前のログイン情報を引き継いでしまう?現象を確認しました。

【PHP】strtotime バグ?オーバーフロー?加減算時の罠

PHP の文字列から日付に変換する strtotime の関数には加算、減算発生する際に発生する様々な罠があります。今回その罠をご紹介。

【PHP】PHPでAPIドキュメント(API Blueprint & aglio)をスクレイピングする。

API Blueprint & aglio で出力されたAPIドキュメントをPHPを利用してスクレイピングしてみます。

【PHP】PHPを使って簡単にスクレイピングしてみる

PHP を使用して簡単にスクレイピングをしてみる

【PHP】ノーブレークスペース(\u00a0)への対処

PHP でのノーブレークスペース(\u00a0)への対処

【PHP】Warning: exec(): Unable to fork の対処

PHP で exec() 使用時に Warning: exec(): Unable to fork 使用時のエラー対処方法

PHP で Database の Tableを丸ごとコピー

テスト用のDBの整備が手間だったのでPHPで Database の Table定義を丸ごとコピーしました。

Laravel で PHPUnit を使用してメール本文を確認する方法

Laravel で PHPUnit を使用してメール本文を確認する方法

【PHP】サブフォルダ内のファイルをまとめて取得する

PHP サブフォルダ内のファイルをまとめて取得する

PHPUnit のテスト用のテストサンプル

PHPUnit のテスト用のテストサンプル。PHPUnit の Error や Warning など色んなテスト結果出力させます。

PHPUnit テスト実行時に利用可能なフックインターフェイス

PHPUnit を拡張してテスト実行時にテストの成功や失敗、エラー、終了などをフックするインターフェイスを実装する

Laravel メールを自動的にマルチパート化する

Laravel でのメール送信を自動的にマルチパート化する方法

composer メモリオーバー対策

PHP の composer 使用時のメモリオーバー対策

Laravel View の文字列取得

Laravel の View 文字列を取得する方法

【PHP】ReflectionClass を使ってクラスの private property・method に読み書き・実行する方法

PHPでクラスの private property・method に対して読み書き・実行するする方法のメモ

【PHP】PHPUnit の出力ログを見やすくHTMLに変換

PHPUnit の出力ログをXML形式から見やすいHTMLに変換する方法メモ

【PHP】緩やかな比較

PHPの緩やかな比較な比較はバグのもとになりやすいのでご注意ください。

【PHP】int型でオーバーフロー

PHPは動的型付けのため、数値がオーバーフローを起こさないと考えられています。ただし、条件によっては発生するので危険なため覚えておくのが良いでしょう。

【PHP】uniqidの危険性

PHPではuniqidという一意のIDを生成するという意味の名を持つ関数が存在します。ですがこれを安易に使用するととても危険です。

Laravel Dusk テスト間でセッションデータを破棄する方法

Laravel Duskだと1クラス内でのテストケースだと同一ブラウザがテストされてしまいます。それを防ぐための対策です。

【PHP】VSCode で Xdebug を使用してデバッグをする方法

VSCode を使用しての PHP デバッグ方法メモ