採択
パンフ記事(4ページ)

PHPで学ぶデータ構造:ハッシュテーブルとチェイン法

app1e_s meihei

ハッシュテーブルは、文字列のキーから高速で値を取り出すことができる強力なデータ構造です。私たちの身近なPHPの配列が良い例です。そして、チェイン法はハッシュテーブル実装時に生じるハッシュの衝突という問題を解決するための実装方法です。
これらの技術はPHPの配列の内部実装でも利用されており、PHPerにとって必須の知識であると言っても過言ではありません!

今回は、ハッシュテーブルとチェイン法についてより理解を深めるために、PHPのSplFixedArray(C言語の配列と似たような挙動をもつ)を使ってその実装を行います。

お品書き

  • ハッシュテーブルの動作原理と、データの格納・検索方法についての解説
  • PHPによる実装例:ハッシュ関数、キーと値の挿入、そして衝突発生時のチェイン法による解決など

対象読者

  • ハッシュテーブル何それ美味しいの?という人
  • PHPについてより深い理解を求めている人
4
採択
パンフ記事(4ページ)

PHPerがいる会社同士で合同勉強会をやろう!開催までのHOWTO

asumikam asumikam

過去、私は社内の勉強会を主催してきましたが、2023年には他社の方と何度か勉強会を開催する機会を作り実行してきました。
これらはまるで「ミニカンファレンス」のような形をとり、非常に有意義なものでした。
その経験から得た知見を共有し、これまでの成功と失敗から学んだことを皆さんとシェアしたいと思います。
PHPer同士の合同勉強会がもっとカジュアルに行われることを願って!

書くこと

  • 合同勉強会をなぜやるのか・開催するモチベーション・社内にもたらされる効果
  • 「やりましょう」のHOWTO
  • 当日までにやること
  • 当日のHOWTO
  • 合同勉強会に入れた方が良い要素
6
採択
パンフ記事(4ページ)

テキストエディタがPHPをシンタックスハイライトする仕組みとモダンテキストエディタ事情について

takeokunn たけてぃ

EmacsやPhpStormのようなテキストエディタは常に最新のPHPをストレスなく書けるように機能を提供し続けています。
直近追加されたmatch式やenum構文なども問題なくハイライトしてくれるのは誰かが対応してくれているからです。
この記事では、そもそもテキストエディタはどのように構文を解釈してハイライトしてくれているのか、tree-sitterなどの最近のテキストエディタ事情も踏まえて解説していきます。

5
採択
パンフ記事(4ページ)

PHPのエラーとハンドリングを深ぼる

o0h_ きんじょうひでき

PHPには、複数のエラーがあります。
「復旧不能な致命的なエラー」「復旧可能な致命的なエラー」「継続的なエラー」が主役です。
「例外」もいますね。
発生のタイミングで、PHPの起動時やコンパイル時だったり実行時だったり…と複数のパターンがあります。
そして、それをハンドリングするための機構、エラーハンドラーがあります。
更に、エラー制御演算子 @ があります。

こう書いてみると、割と色々なものが入り組んでいるんだな〜と思いませんか?
とはいえ、PHPの経験をある程度積んだアプリケーション開発者であれば、身体で覚えているようにも思います。

しかし、PHPにとって「エラー」って何なのでしょう?
エラーが起きた時に、何が起きて、どういう処理をしているのでしょうか?
@ を付けたら「エラーが出なくなる」、なぜ? 制御の対象はどこまでなのか、どういう挙動の変化があるのか?

PHPの気持ちになって考えてみたいな、と思いませんか・・・・?
そこで、php-srcの読解やPHPコミュニティで公開されている各種ツールの利用により、
「エラーって何だろう」を自分の目で見ていこうと思いました。
本記事は、その調査結果です。

コンテンツ

  • PHPのエラーの簡単なおさらい(設定やアプリケーション)
  • 「エラーが起きた」とは、何が起きたのか
  • エラー制御演算子 @ の仕事
3