0

kohana \ modules \ database \ classes \ Kohana\DatabaseにあるKohana_Database_PDOを拡張しようとしています

これを行うために、kohana \ application \ classes\databaseのPDO.phpファイルにファイルを作成しました

私が使用しているコードは

<?php defined('SYSPATH') OR die('No direct script access.');
/**
 * PDO database connection.
 *
 * @package    Application
 * @category   Drivers
 */
class Application_Database_PDO extends Kohana_Database_PDO {} // End Database_PDO

エラーが発生します:


ErrorException [致命的なエラー]:クラス'Database_PDO'が見つかりません MODPATH\ database \ classes \ Kohana \ Database.php [78]

// Set the driver class name
    $driver = 'Database_'.ucfirst($config['type']);
    // Create the database connection instance
    $driver = new $driver($name, $config); <- highlighted line

    // Store the database instance
    Database::$instances[$name] = $driver;
}
  1. {PHP内部呼び出し}»Kohana_Core::shutdown_handler()

ご協力いただきありがとうございます :)

4

1 に答える 1

2

このコードの場合:

<?php defined('SYSPATH') OR die('No direct script access.');
/**
 * PDO database connection.
 *
 * @package    Application
 * @category   Drivers
 */
class Application_Database_PDO extends Kohana_Database_PDO {} // End Database_PDO

APPPATH / classes / DatabaseにあるPDO.phpファイルのコードである場合、それが機能しないのも不思議ではありません。

ファイルは次のようになります。

<?php defined('SYSPATH') or die('No direct script access.');
/**
 * PDO database connection.
 *
 * @package    Application
 * @category   Drivers
 */
class Database_PDO extends Kohana_Database_PDO {...

それ以外の場合は、Application _...にする必要がある場合は、次のようにフォルダ構造を実行する必要があります。APPPATH/classes/Application/Database/PDO.php

Kohanaはデフォルトで_、を針として使用してクラス名を分解し、ファイル名である最後の部分を除いて、すべての文字列部分をディレクトリとして使用します

于 2013-03-22T11:57:57.320 に答える