0
<?php
    
    use vendor\doctrine\common\lib\Doctrine\Common\ClassLoader,
    vendor\doctrine\orm\lib\Doctrine\ORM\EntityManager;

    require 'vendor/doctrine/common/lib/Doctrine/Common/ClassLoader.php' or die();

    $loader = new ClassLoader("Doctrine");
    $loader->register();

    $dbParams = array(
        'driver' => 'pdo_mysql',
        'user' => 'root',
        'password' => 'password',
        'dbname' => 'test_doctrine'
    );
    $path = 'entities/';
    $config = Setup::createAnnotationMetadataConfiguration($path, true);
    $entityManager = EntityManager::create($dbParams, $config);

    $user=new User();
    $post=new Post($user);

    $post->addComment("First comment");
    $post->addComment("Seconde comment");

    $entityManager->persist($user);
    $entityManager->persist($post);
    $entityManager->flush();
    
?>

我收到此错误:

警告:require(1):打开流失败:第 8 行的 /var/www/tests/index.php 中没有这样的文件或目录

致命错误:require():在 /var/www/tests/ 中打开所需的 '1' (include_path='.:/usr/share/php:/usr/local/lib/smarty-3.1.13/libs') 失败第 8 行的 index.php

有人可以帮我理解这里有什么问题吗?

4

1 回答 1

0

一些奇怪的......需要'1'......

无论如何检查1)和2)或需要更多信息。

1) 在第 8 行之前,get_included_files显示包含文件的列表。检查 ClassLoader.php 是否已加载。

2) new ClassLoader("Doctrine") 将在您的 PHP include_path 中找到 Doctrine* 命名空间。这包括 .(current path) 在你的情况下,检查你的 Doctrine 库在这个(子目录也可以)。

于 2013-02-24T00:26:09.570 回答