PHP Conference の参加は4度目(前回 2024年の体験ブログ)。
前回は大阪で参加し、今回は東京(京急蒲田の大田区産業プラザPiO)。東京での対面参加は 2013の WordCamp Tokyo 2013&PHP Conference 2013共催に初参加であり、じつに12年ぶりのことです!2013年と同じ会場を訪れてその準備状況をみていると当時のことを思い出してきました。
新幹線で京都方面から品川駅に到着間近。景色が良かったので撮影したのでした。
今回は前日の夕方に京急蒲田に訪れ、少し商店街などを散策しました。
夕食は、京浜蒲田商店街 あすと(Google Maps)にある、すしやコトブキ蒲田店(Google Maps)で「なだれ寿司」という名物品を食べました。ボリュームがありましたね!
その後、南蒲田北野神社(Google Maps)に立ち寄りました。その神社近くにある川は海とつながっているからか、潮の匂いっぽいのがしたような気がしました。
宿泊ホテル:京急 EXイン 京急蒲田駅前
午前:PHP Conference Japan 2025
以下、筆者が読み取った発表者の内容をメモしておきます。筆者が読み取ったということですので、誤って読み取った場合、発表者の意図しない内容になっている可能性はあります。その点はご了承ください。また全部をメモしているわけではなく、キーワードになる言葉だけをメモしている場合や他の作業をしてしまっている場合にはメモなしの場合もあります。
また筆者のコメントは # をつけています。
Opening
基調講演「PHPの今とこれから」
プログラム:https://fortee.jp/phpcon-2025/proposal/ba73ff87-93ff-4772-8003-43f246a310ae
PHP言語は、Webアプリケーションとして約75% のシェアを誇っている。
# https://w3techs.com/technologies/overview/programming_language をみると、2025年6月27日時点で 74%になっていますね!
PHPが発展してきた経緯について説明。5.4ぐらいからユーザーがかなり増えてきたとのこと。
7で大幅に高速化をして、8 からJIT導入(プログラムを高速に実行させる機能)が入った。
PHP 7を含むそれ以前の利用が結構多い。WordPress は 7.4 以上が必須となっている。
PHPのサポートサイクルは4年になっていたが、昨年度からその年の年末まではサポートされるように若干延長された。PHP8.1 のサポートもそろそろ切れそう。
セキュリティ脆弱性について、CVEがつくものは、速やかな更新が必要。
PHP 8.5 リリース計画と開発
2025/11/20 予定。
パイプ演算子(|>)で処理を一連の処理に統合できる。
#関連情報
プロパティプロモーションで final が利用可能に
クローン実行時のプロパティ設定
clone_withの引数を設定できて、クローンするときに完全複製以外ができる。
https://wiki.php.net/rfc/clone_with_v2
重要な場合を返す場合、戻り値を無視できないことを意味するアトリビュート
AIエージェントはこう育てる:GitHub Agent導入・活用・共進化のリアル by コボリアキラ
プログラム:https://fortee.jp/phpcon-2025/proposal/8c92aa90-8036-45eb-82f0-c447e0b19678
この時点では、Claude Codeの導入検討をすべいかもしれないということ。
新しいツールの導入には、少なからずハードルがある
- Step 1. Agentの導入
- Step 2. prompt の整備
- Issue の作成、Pull request の作成が効果がある
面倒なのでやぼりやすい傾向があるから - 入力必須な指示を減るように工夫する
- 期待値だけ示し、現状や課題はAgentに考えさせる
- 次のプロンプト実行にスムーズにつなげる
- Issue 作成プロンプト内で、開発ブランチんお提案およびその Issue を解決する
- 練習用ディレクトリも用意する
- 本番の前にまずは個人で試すことが大事
- Step 3. instructionのメンテナンス(出力には限界がある)
- ***までは出来るけれど、◯◯◯はできないこともある。
- ひとつの作業指示やPRごとに検討
- そのためのプロンプトを準備してしまうのが面里
ちいさくPHPUnitをつくり、仕組みと拡張ポイントを探る by asumikam
プログラム:https://fortee.jp/phpcon-2025/proposal/dc468fc0-d847-4ee5-8b3c-6a9ece13997e
実際にライブコーディングをする
などなど。
ランチタイム
昼食:煮干し和渦製麺
蒲田八幡神社で御朱印第1号!
各ブースのアンケートをかくと貰えるノベルティグッズの質が高い!
午後:PHP Conference Japan 2025
MySQL5.6から8.4へ 戦いの記録 by よしだ
プログラム:https://fortee.jp/phpcon-2025/proposal/26e2007c-7297-4740-94d0-917a9d4bb1b6
# 筆者は MySQL 5.7 からようやく 8.0 にアップグレード完了したばかり(さくらインターネットのレンタルサーバー上)。
怖くないComposer by 雫石
composer を使わなくても製品を作れるが、「ツラい」。バージョン管理やライブラリを手動で配置する必要があるなど。
# 筆者は、GitHub Actions で WordPress のプラグインを PHP Unit によるテストをするときに利用している。
composer のデフォルトリポジトリは、数十万の PHPパッケージがあり、ほしいものは大抵ある。
途中から composer を入れるのは難しくないのか
require 'vendor/autoload.php';
をいれたら、特に副作用無く導入可能なはずである。
障壁は、プロジェクト主導者の精神的な障壁の方が高い(責任とれるの?大丈夫などの心配がある)
Composer は Class が記述してあるファイルがどのファイルパスにあるかのマップみたいなもの。
未定義な Class が参照されたとき、、そのマップからファイルパスを取り出す require することになるので負荷は大きくない。
composer.lock ファイル
composer install するときに自動生成される。手動書き換えすると駄目!
このファイルが無い場合には、新規で生成。あれば、そのパッケージがインストールされていく。
おすすめインストール(本番用。APCuのこと詳しくなければ、apcuオプションは使わないほうがいい。いろいろ技術的にやらないといけないことがあるため)
composer install --no-dev --optimize-autoloader --apcu-autoloader
パッケージの取捨選択が重要
ほしい機能があるとして、その機能を含むさらに多くの機能がある大きなパッケージの場合、それらすべての機能の深い知識を保つ必要があり(# セキュルティ問題やパッケージの問題かどうか把握する必要ありか。)、それが難しいため。
いまやほしい場合、検索しなくても生成AIで候補を素早くだせる!
--
そんなこんなで今年の PHP Conference Japan 2025 参加は終わりました。また来年機会があったら最新のPHP動向を知るためにも訪れたいと思います!
2025年6月28日 @kimipooh