PHP
はじめに PSR-12 とは PSR-2 と PSR-12 の違い PHP_CodeSniffer とは IntelliJ / PHPStorm でスタイルチェックする Jenkins でコーディングスタイルチェック まとめ はじめに この記事は PHP アドベントカレンダー 4日目の記事です。 qiita.com 昨日は @taro…
はじめに レガシーなプロダクトに Laravel を導入する Laravel について なぜ部分的にでも Laravel に移行していきたいのか Laravel の DI 機能 Laravel の Facade どうやってレガシーコードから Laravel DI と Facade を使うのか Kernel の中身をちょっと見…
仕事で PHP のプロダクトのリビルトを行っていて、 PHP 開発を始めるために必要なことを整理したので、ブログでも公開しておきます。 PHP のプロダクトを開発しているチームに、新しい人が Join したときなどに使えます。 知っているところは読み飛ばして、…
PHP のコーディング規約 PSR-12 の対応状況 PHP のコーディング規約 PHP は PHP-Fig という団体で様々な規約が決められているが、2019年8月、PSR-2に変わり、PSR-12 という新たなコーディング規約が採用された。 PSR-12 が出るまでは、PSR-1, PSR-2, PSR-4 …
Laravel/LumenをLiteSpeedで動かす 無料の Open LiteSpeed で .htaccess を読めるのか どうしたのか rewrite enable 1 rulesの中身 設定が適用されているか確認する まとめ Laravel/LumenをLiteSpeedで動かす Laravel (や Lumen )を LiteSpeed 上で動かし…
Lumen artisanコマンドを叩く Migration ファイルを編集 Migration コマンドを叩く Eloquent を有効に Lumen Laravel を軽くしたと言われる Lumen で Migration をしてみます artisanコマンドを叩く Laravel と同じっぽいので Laravel の Eloquent のドキュ…
PHPEarth とは PHPEarth のイメージにはPDOが入っていない Dockerfile で確認 ドキュメントを確認 Dockerfile で追加してみる 動かない理由を調査する php -m で見てみる php.ini を見る イメージを削除してやりなおしてみる 結論 PHPEarth とは PHPの色々な…
/etc/litespeed/admin/htpasswd がユーザー名とパスワードの設定になっている。 www.luft.co.jp などのツールをつかってできたhtpasswdファイルをそこに配置すれば、そのユーザー名とパスワードでログインできるようになる。
はじめに Lumen Lumen Lumenのアプリを作成する Docker LiteSpeed LiteSpeed とは Docker の LiteSpeed イメージ Docker LiteSpeed ファイル構造 Lumen のための設定 まとめ はじめに この記事では、Docker上でLiteSpeedを使ってLumenを動かすことを目標にし…
composer で phpQuery をインストールする htmlをパースする まとめ composer で phpQuery をインストールする Composer が入っている前提とします。 composer require electrolinux/phpquery htmlをパースする Guzzleでリクエストをして、返ってきたHTMLを…
Guzzleについて Guzzle という PHP の HTTP クライアントがある。 github.com このライブラリ、めちゃめちゃ使われているし、基本的には使い勝手も良い。僕も PHP で Web API を叩く時などには基本的にはこれを使う。 違和感 しかしある時に違和感に気づく。…
はじめに PHPUnit 6 にするきっかけ 地道な修正作業 クラスの namespace mt_rand と mt_srand グローバル変数の扱い non-numeric test phpunit6 ochiru アサーションをしていないテスト PHPUnit 6 にしてよかったこと そして時代は はじめに この記事は PHP …
はじめに結論から ハマった経緯 エラー内容の確認と原因 エラーの原因 エラーの特定フロー まとめ はじめに結論から 先日、AWS の Elastic IP を使っていてハマった。 Elastic IP から割り当てられる IP は、東京リージョンで発行したものだとしても日本の I…
はじめに 環境 PHP, nginx, php-fpm のインストール PHP と php-fpm を Amazon Linux にインストールする nginx を Amaxon Linux にインストールする 各種設定 nginx の設定 server_name root fastcgi_pass php-fpm の設定 ユーザーと権限 nginx から php-fp…
環境 はじめに AuthenticatesUsers::login の中でやっていること validateLogin hasTooManyLoginAttempts まわり ThrottlesLogins::hasTooManyLoginAttempts attemptLogin それ以降の処理 環境 PHP 7.3 Laravel 5.8 はじめに Laravel では標準で認証の機能が…
はじめに 個人的に役に立ったページです 執筆時のLaravelの最新版は 5.8 です 基本は公式ドキュメントが大事 随時更新していきます Homestead Laravel Homestead 5.8 Laravel HomesteadでPHP(Laravel)アプリケーションが動作しなくなった時の対処法 Model, M…
環境 はじめに is_numeric ctype_digit 結論: filter_var 環境 利用しているバージョンは PHP 7.2 ですが、結構幅広いバージョンに通じる話だと思う。 はじめに PHPのキャストがガバガバなのはみなさんご存知だろう。 $ php -r "var_dump((int)'ホゲーーー')…
Interfaceを利用する意義 Laravelでどうやって注入するの? サービスプロバイダとは register メソッドでDIの設定を書く Interfaceへの実装注入以外の用途でも使える まとめ Interfaceを利用する意義 LaravelはDIを勝手にいい感じにしてくれます。例えばこう…
シンタックスハイライト はてなブログにはシンタックスハイライト(見やすいようにプログラムのコードに色をつけてくれる機能)がある。 シンタックスハイライトなし
はじめに PHPのWebフレームワークといえばLaravelである。今PHPでWebアプリケーションを開発するならLaravelを使っておけば間違い無い。 LaravelにはHomesteadという開発環境が用意されていて、これを使えばすぐにWebアプリを作成できる。 環境 今回はMacで…
はじめに PHPのGuzzleHttp *1 を利用し、以下のようなコードを書いた。 guzzleClient は コンストラクタDIなどを利用して // $this->guzzleClinet = new \GuzzleHttp\Client(); を差し込むようにする $response = $this->guzzleClient->post($url); } catch …
概要 ??= 演算子とは この演算子が使えない理由 関係する演算子の歴史 三項演算子 a ? b : c 二項演算子 ?: 演算子 ?? まとめ 参考 概要 PHP 7.4 から ??= 演算子が追加されることが確定しました。 github.com ??= 演算子とは $var ??= <value> は、 $var が null </value>…
これはなに? PHPで新規開発する際にどういう構成だったりフレームワークにしていくかなというメモです。 PHPの特徴 ゆるふわで書けるので開発スピードが早い。 学習コストが低く直感的なので誰でもすぐに書ける。 利用者が多くライブラリが充実している。 P…
はじめに 機能の概要 v1 との違い 対応している型 callableについて strict_types 継承 将来の話: readonly 値の初期化 参照渡し さいごに 参考 はじめに PHP 7.4の新機能としてクラスのプロパティに型がかけるようになる機能が提案されていました。これはTy…
はじめに 2018年9月にSlimの3.11がリリースされました。私がslimフレームワークを採用して開発を始めた時のバージョンは3.9.2でした。3.9.2のリリースが2017年の11月、3.10.0が2018年の4月。3.9.2から2回のリリースがありました。 3.10.0の変更 3.10.0の変更…
前回のあらすじ 以下の記事の続きです。 www.utakata.work FluentPDO *1 というライブラリのSelectQueryメソッドをMockeryでMockしようとすると、Declaration of Mockery_3_SelectQuery::__call($method, $args) should be compatible with CommonQuery::__c…
はじめに MockeryとFluentPDOの実装を追ってみる。 どうするか はじめに PHPのモックフレームワーク「Mockery」を利用してクラスをモックしようとした際に以下のエラーが出た。 Declaration of Mockery_3_SelectQuery::__call($method, $args) should be com…
はじめに 新しくAPIサーバーを建てるまでの話 新サービスを建てるにあたり考えなければいけないこと 開発を進めるにあたり 言語・フレームワーク・ミドルウェア選定 フレームワークどうするか GraphQLを採用するか、JSONのREST APIにするか サーバー構成をど…
はじめに PHPのバージョン empty(false) は true is_numericはfloatでもtrue $datetime->format の t まとめ はじめに PHP アドベントカレンダー が結構空いているので突貫で記事を書いています。 以前、以下のような記事を書きました。 www.utakata.work ま…
はじめに この記事は GraphQL Advent Calendar 2018 - Qiita の4日目の記事です。 昨日はgipcompanyさんのLet's Paginate! - GraphQLでページネーションをやってみよう!でした。 PHPでGraphQL GraphQLが話題になり始めたぐらいの時に、「GraphQL便利そうだ…