这是我的文件夹结构。
php-orm
doctrine
Amphur.php
vendor
bin
composer
doctrine
symfony
autoload.php
list.php
这是list.php文件。
<?php
include 'config.php';
use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
require_once 'vendor/autoload.php';
$paths = array(__DIR__ . '/doctrine');
$isDevMode = true;
$dbParams = array(
'driver' => 'pdo_mysql',
'user' => $db[$dbuse]['username'],
'password' => $db[$dbuse]['password'],
'dbname' => $db[$dbuse]['database'],
);
$config = Setup::createAnnotationMetadataConfiguration($paths, $isDevMode);
$entityManager = EntityManager::create($dbParams, $config);
$class_repo = $entityManager->getRepository('Amphur');
//$provinces = $class_repo->findBy('', array('PROVINCE_NAME' => 'ASC'), 50, 0);
$provinces = $class_repo->findAll();
print_r($provinces);
这是doctrine / Amphur.php文件。
<?php
// doctrine/Amphur.php
/**
* @Entity @Table(name="amphur")
**/
class Amphur
{
/** @AMPHUR_ID @Column(type="integer") @GeneratedValue **/
protected $id;
/** @Column(type="string") **/
protected $amphur_name;
}
数据库:test_db 表:amphur [AMPHUR_ID | AMPHUR_CODE | AMPHUR_NAME | GEO_ID | PROVINCE_ID]
当我跑步时,我收到错误警告:class_parents():Class Amphur不存在且无法加载
如果我已经存在数据库,如何获取存储库?
答案 0 :(得分:1)
包含Amphur文件以删除未找到的类。稍后您可以查看如何配置自动加载器以在doctrine目录中查找文件。
require_once 'vendor/autoload.php';
require_once 'doctrine/Amphur.php';
还需要向Amphur添加Id注释
/** @AMPHUR_ID
* @Id
* @Column(type="integer")
* @GeneratedValue
* **/
protected $id;
这是一个调试提示。收到您的错误消息并将其复制/粘贴到Google搜索栏中。您可能会对存在多少解决方案感到惊讶。