PHP
さて本題、見たセッションの簡単な感想と、わからなくて調べたこと Datadog APM で始める Laravel アプリケーションのパフォーマンスチューニング 予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント PHPとGraphQL BASE大規模リアーキテクチャリン…
2021-10-09追記。「MySQLとインデックスとPHPer」のスライドのリンク間違っていました。修正済みです。 今回はいろいろ忙しいし書くつもりなかったけど、めちゃくちゃいいセッションが2つあったので、その感想だけ手短に書く。 PHPer が知るべき MySQL クエ…
コロナなのでオンライン。オンラインのカンファレンス見るのは初。今年そもそもカンファレンス初。あと~関西じゃないPHPカンファレンスも初だな。 ほんと簡単な感想です。アーカイブぜんぶ残るみたいなので興味あるセッションはアーカイブ見ましょう。 スラ…
https://github.com/hirak/prestissimo プラグインを入れたり、https://packagist.jp/ ミラーを使うように設定した状態で、Composerを2系にアップデートすると、composer require時等に以下のような警告・エラーが出る。 The "hirak/prestissimo" plugin was…
2020-03-26追記 もっと単純に、一つの操作を複数に分けるな、って話でよかったね。 'val1', 'key2' => 'val2', 'key3' => 'val3', ]; 上記のような場合に、$assoc1の方法より$assoc2の方法がいいと思う。まあ昔からずっと思っていたのだが最近$assoc1の方法…
たまに見かけるので。 こんな感じにすれば__toString()が自動的に呼ばれる。エラーメッセージとスタックトレースの両方がついたいい感じの出力になる。
phpenv経由でphp-buildで。すると、 configure: error: Please reinstall the libzip distribution と言われるのでsudo yum install libzip. だが入れても言ってくるので、libzip-develも入れてみる。すると今度は、 configure: error: system libzip must b…
CentOS 7環境で、新規案件のためにLaravel入れたのだがlaravelコマンドが入ってない。~/.composer/vendor/binにパスは通ってるのになあ、とよく見てみると、~/.composer/vendor/bin自体がなかった。 もうちょっと調べてみると、~/.config/composerというのが…
メジャーなのだけでもvar_dump(), var_export(), print_r()などありどれ使えばよいか迷ったので、簡単にまとめてみた。 主にデバッグとログに吐くのが目的なんで、そういう視点で。オブジェクトもきっちりダンプしたいとかはないが、PHP上で扱える形式で吐い…
アクセサの値を普通に表示するだけなら、?:演算子だけでいい。PHPはnullをechoしても特に問題ないので。 created_at ?: 'default'; ただ、フォーマットしたい場合はちょっとやっかい。以下はcreated_atがNULLの場合、nullのメソッドを呼び出してエラーになる…
ドキュメントにも一応書いてあるけどなんか半端なので。 https://laravel.com/docs/5.6/eloquent#events https://readouble.com/laravel/5.5/ja/eloquent.html#events モデルの$dispatchesEventsに、['イベント名' => イベントクラス::class, ...]の形の配列…
あるアプリケーションが依存している Git リポジトリがあったのだが、master 以外のブランチを参照することになった。ので、composer.json を更新して composer update したら、The requested package <VENDOR>/<REPO> <BRANCH> exists as <VENDOR>/<REPO>[dev-master] but these are rejected by</repo></vendor></branch></repo></vendor>…
先週土曜日、PHPカンファレンス関西2016に行ってきた。PHPカンファレンスは初めて。と いうか、カンファレンスとか勉強会とかに行くこと自体初めて。 前々から興味はあったが、なかなか機会がなかった。今回もだいぶ前から行こうと決めて なかったら行けてな…
vendor/autoload.php にある、 ComposerAutoloaderInitXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX の XXX... のことね。手抜きでサーバ側に Composer 入れず autoloader だけ入れたいなと思ったんだけど、なにか環境ベースの値だったらいやなので調べた。 get('autol…
前提として、PHPでは変数には2つのスコープしかない。グローバルと、各関数(メソッド)ごとのものだ。ブロックスコープがないのが不便とはいえ、グローバル変数を使わなければ割と平和だ。しかしレガシーコードを扱う場合など、仕方なくグローバル変数を使わ…