他の答えは正しいですが、間違った理由があります。
データをPHP配列に保持すると、データセットがメモリにキャッシュされている場合でも、データベースからのフェッチよりもはるかに高速にフェッチできます。問題は、通常のPHPアーキテクチャでは、各リクエストが個別のプロセスによって処理されることです。したがって、データへのアクセスが必要な各リクエストは、データセット全体をメモリにロードする必要があります。これには時間がかかります。データベースからアイテムを取得するよりもこの操作を実行する方がコストがかかるポイントは、さまざまな要因によって異なりますが、大まかな目安として、100レコードの範囲です。このモデルが理にかなっているアプリケーションがありますが、それらは非常に少量のデータと、データを変更/管理する制御されたプロセスに依存しています。
次の問題は、株式に対していくつかのトランザクションを記録する必要があることです。つまり、データを変更することを意味します。つまり、アクセスをシリアル化して、2つの別々のトランザクションが同時に発生しないようにします。デッドロックがない間は、これをPHPで(裁定するための専用デーモンなしで)実装することは不可能です。
コードの実装に対して誰かに課金している場合、これをメモリに実装しようとするのは非常に悪い考えであることは、盲目的に明らかなはずです。