代码之家  ›  专栏  ›  技术社区  ›  Nick Weavers

致命错误:未捕获错误:找不到类“傻瓜Z\SphinxQL\Connection”

  •  0
  • Nick Weavers  · 技术社区  · 7 年前

    我使用以下json文件安装了用于PHP和composer的Dougz SphinxQL查询生成器:

    {
        "require": {
            "foolz/sphinxql-query-builder": "^2.0"
        }
    }
    

    我的php如下所示:

    <?php
    require_once __DIR__ . '/vendor/autoload.php';
    
    use Foolz\SphinxQL\SphinxQL;
    use Foolz\SphinxQL\Connection;
    
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
    
    // create a SphinxQL Connection object to use with SphinxQL
    $conn = new Connection();
    $conn->setConnectionParams('127.0.0.1', 9306);
    
    $query = SphinxQL::create($conn)->select('*')
        ->from('test1')
        ->match('@test document');
    #    ->where('banned', '=', 1);
    
    $result = $query->execute();
    
    var_dump($result);
    
    ?>
    

    使用我的调试器,我可以看到autoloader(自动加载)功能 findFileWithExtension )正在尝试在中查找文件 /mnt/i/var/www/vhosts/my.play.net/sphinx/vendor/composer/../foolz/sphinxql-query-builder/Connection.php 它应该在什么时候看 /mnt/i/var/www/vhosts/my.play.net/sphinx/vendor/composer/../foolz/sphinxql-query-builder/Drivers/Mysqli/Connection.php 它的实际位置。

    有人能告诉我为什么我会看到这个,以及我如何修复它吗?

    0 回复  |  直到 7 年前
        1
  •  4
  •   rob006    7 年前

    您使用的命名空间不正确。得到 vendor/foolz/sphinxql-query-builder/src/Drivers/Mysqli/Connection.php Foolz\SphinxQL\Drivers\Mysqli\Connection 作为FQN:

    use Foolz\SphinxQL\SphinxQL;
    use Foolz\SphinxQL\Drivers\Mysqli\Connection;