1

SilexでPHP ActiveRecordを使用しようとしていますが、モデルのオートロードで奇妙なことが起こっています:

// index.php
<?php require_once __DIR__.'/../vendor/autoload.php';

$app = new Silex\Application();

ActiveRecord\Config::initialize(function ($cfg) {
  $cfg->set_model_directory(__DIR__.'/../model');
  // ...
});

$app->get('/', function () {
  $page = App\Model\Page::all();
  // return ...;
});

// ../model/Page.php
<?php namespace App\Model;

class Page extends \ActiveRecord\Model {

}

ページを開くと、「Class App\Model\Page not found」と表示されます。

手動の場合require '../model/Page.php'- 動作します。
名前空間を削除し../model/Page.phpて、通常のクラスのように使用する場合:

$page = Page::all(); 

それは再び機能します。

名前空間の何が問題になっていますか?

4

1 に答える 1