快取模型後設資料

Phalcon 構建了一些關於它正在使用的表的資訊,因此可以驗證插入到它們的資料,而無需手動實現所有內容。這些是模型的後設資料。為了加快和防止 Phalcon 每次重新整理頁面時構建後設資料,可以快取它們。為此,你需要實現 metaData 服務才能使用:

$di->set('modelsMetadata', function() use ($config)
{
    // assuming that you have a $config var with
    // models.metadata.adapter field declared
    switch (strtolower($config->models->metadata->adapter)) {
        case 'apc':
            $metaData = new MetaDataApcAdapter([
                'lifetime' => $config->models->metadata->lifetime,
                'suffix' => $config->models->metadata->suffix,
            ]);
            break;
        case 'xcache':
            $metaData = new MetaDataXCacheAdapter([
                'lifetime' => $config->models->metadata->lifetime,
                'prefix' => $config->models->metadata->suffix,
            ]);
            break;
        case 'memory':
            $metaData = new MetaDataMemoryAdapter();
            break;
        default:
            throw new \Exception('Unimplemented models::metadata.adapter in config.ini');
    }

    return $metaData;
});

Phalcons 專用頁面提供更多文件。