サイボウズ Garoon開発チームの荒瀬です。 この記事では PHP 8 より前の sort 系関数に翻弄された私が感じた、そのヤバさをお伝えします。 そうっとしておくことはできなかったよ、sort だけにね、ガハハ。 PHP 8 より前の sort は何が問題だったのか 実際に問題となるコードの結果を見てもらえるとわかるかと思います。 <?php // PHP 7.4.33 var_dump(11 < '12'); // true var_dump('12' < 'a1'); // true var_dump('a1' < 10); // true var_dump(10 < 11); // true こちらのリンクからも結果を確認できます。 このコードの結果を見てみると、結果が循環してしまい、矛盾が生じていることがわかります。 この結果をイラストにするとこうなります。 このように PH
7月も半ばを過ぎ、暑い日々が続いています。引き続き、11月のリリースに向けてPHPバージョン8.4の開発が行われており、α版のリリースが開始されました。今回の記事では、PHP 8.4の最大の目玉の機能の一つであるプロパティアクセスフックについて紹介します。 PHP 8.4の開発状況 PHP 8.4の開発は11月21日の一般公開に向けて順調に進んでおり、計画通りα版のリリースが開始されています。今後、二週間毎にα版が合計3回リリースされる予定です。本稿執筆時点で、7月5日にα1版、7月18日にα2版がリリースされています。今後、8月1日にα3版がリリースされた後、8月13日にフィーチャーフリーズが宣言される予定です。この後は、新機能の追加は原則として行われず、バグ修正のみが行われることになります。現在、PHP 8.4で採用される機能に関する投票が6件行われており、これらの投票の結果をもって、
はじめに PHPで静的なHTMLを生成したいとき、例えば以下のようにob_get_contentsを用いてHTMLに埋め込んだ変数等を含めた生成結果を得て保存することもあるだろう。 <?php ob_start(); ?> <p>HTMLを出力</p> <?php $html = ob_get_contents(); ob_end_clean(); var_dump($html); ?> しかしながら、すでに生成済みのHTMLファイルに対してDOM操作を行うことで新たにHTMLファイルを生成したいということは割とよくある。特に、SSGをやってみたい場合などは顕著だろう。そこで、PHPでDOM操作を行う基本的な方法についてメモをする。 PHPにおいて従来からあるDOMDocumentを用いることを考えたが、このAPIはHTML5以降に対応していないため、PHP8.4以降で利用できるようになる
HTML 5 support in PHP 8.4 Even though HTML 5 has been around for over 16 years, PHP never had proper support for it. PHP does have \DOMDocument, which in theory should support HTML 4, but it isn't really HTML 4 compliant anymore. So, yeah, classic PHP — right 😅? Well, we can laugh all we want, but let's take a moment to highlight new features that — albeit late — fix these quirks: PHP 8.4 is addi
PHPでアクターモデルが導入できない・・? 長い間そう言われてきました(自分も言ってました)。 実際に並行システムのためのものでもあり、 PHPでは簡単な並行処理以外は難しくもありました。 ja.wikipedia.org PHP主体の方はOOPに慣れ親しんでいると思いますが、 アクターモデルはOOPとは異なるプログラミングパラダイムとなることもあり、 アクターモデルは実際に触りまくって概念等を覚えないとなかなかシュッと使えるものでもありません。 そのためにPHP以外の言語をわざわざ触るのも・・・ などもあるかなと思います。 そして月日が流れ、PHPでも並行処理が比較的手軽に利用することができるようになりました。 今なら作れるのでは、と思い実際にPHPのみでアクターモデルが導入できるツールキットを作って公開しました。 github.com フレームワークではありませんので好みのフレームワー
Webアプリケーションの効率を再定義するBEAR.Sundayの分散キャッシングフレームワーク 2024/3/9にPHPerKaigi 2024 でイベント駆動コンテンツ(Webアプリケーションの効率を再定義するBEAR.Sundayの分散キャッシングフレームワーク)という40分のトークを行いました。 最初のスライド 「まず、スライドをご覧ください。雲から楽しそうな物がぶら下がっているのをクマが見ています。これは何の象徴でしょうか。」 トークの冒頭でこのような呼びかけを行いました。 これから話すことは分散キャッシングなので、家の中に出現したクラウドからサービスが提供されているということを表しています。 このクマの視線はぶら下がっているサービスではなく、クラウドに向いています。つまり、サービスを生み出す仕組みを注視しているのです。 これは、常に問題の本質を見つめるという姿勢の象徴になっていま
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く