Magentoは典型的なPHP開発とはほど遠いものであり、Magentoが物事と呼んでいるものは、他の人が呼んでいるものと常に一致するとは限りません。Magentoは、ご存知のとおり、モデルレイヤーを2つの部分に分割します。モデルはビジネスロジックを処理し、リソース部分はデータベースとの通信のみを処理します。理論は、データストアを決定した場合はそうではありませんでした。 PDOでアドレス指定できない場合は、それらを取り巻くロジックがなくても、別のリソースにスワップして処理/ロードおよび保存することができます。
magentoが持つ2つの異なるタイプのリソースはEntityとMysql4です。後者はかなり標準的なテーブルゲートウェイシステムであり、リソースはデータベース内のテーブルにマップされますが、前者はもう少し複雑です。ユーザーと開発者がカスタムフィールドを物事に追加するのを本当に簡単にするために、magentoの主要部分(製品、顧客、注文など)はすべて、エンティティ属性値システム(EAV)と呼ばれるもので表されます。値ごとに入力された列を持つよりも、キー(列名を参照)と値を持つ行があります。エンティティリソースは、これらのeavテーブルのデータを保持するフィールド配列へのマッピングを処理します。
ただし、強調するために、これはPHPアプリケーションの典型的なものとはほど遠いので、PHPを学ぶことを目的としている場合は、別のシステムを選択します。