Sap 如何将sybase连接到zendframework 3?

Sap 如何将sybase连接到zendframework 3?,sap,sybase,zend-framework3,Sap,Sybase,Zend Framework3,我无法将sybase连接到zf3。但我可以连接核心php $Appname = basename($_SERVER['SCRIPT_FILENAME'], ".php"); $Dsquery = getenv("DSQUERY"); $Dbname = "tempdb"; $Username = "sa"; $Passwd = "xxxxxxxx"; $conn = sybase_connect($Dsquery, $Username, $Passwd); 它

我无法将sybase连接到zf3。但我可以连接核心php

$Appname = basename($_SERVER['SCRIPT_FILENAME'], ".php");
    $Dsquery = getenv("DSQUERY");
    $Dbname = "tempdb";
    $Username = "sa";
    $Passwd = "xxxxxxxx";

$conn = sybase_connect($Dsquery, $Username, $Passwd);
它能够连接到核心php和sybase

让我知道如何连接下面的ZF3

return [
    'doctrine' => [
        'connection' => [
            'orm_default' => [
                'driverClass' => PDOMySqlDriver::class,
                'params' => [
                    'host'     => 'localhost',                    
                    'user'     => 'root',
                    'password' => '1234',
                    'dbname'   => 'test_db',
                ]
            ],            
        ],        
    ],
    'db' => [
        'driver' => 'Mysqli',
        'database' => 'test_db',
        'username' => 'root',
        'password' => '1234',
    ],
];
正如官方所说,SYBASE在理论上还没有得到官方的支持

还有人在这里问:

但是,如果您在GitHub上看到有人添加了支持:

正如你所看到的,它正在失败。当然,你可以试一下,也许你可以自己修好


祝你好运

1.我们安装了Devart,以便与Sybase建立PDO odbc连接

2.需要在ODBC数据源管理器的系统DSN中创建Devart驱动程序

3.然后在zend3中,我们使用pdo连接和devart odbc

4.为了实现条令,我们将连接对象传递给条令参数

<?php
use Doctrine\DBAL\Driver\PDOMySql\Driver as PDOMySqlDriver;
$connPdo = null;

try {
    $connPdo = new PDO("odbc:DRIVER={Devart ODBC Driver for ASE};host=Develop;dbname=poc;charset=utf8", "sa", "");
    $connPdo->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
    echo $e->getMessage() . '</br>';
}
return [
    'doctrine' => [
        'connection' => [
            'orm_default' => [
                'driverClass' => PDOMySqlDriver::class,
                'params' => [
                    'pdo' => $connPdo
                ]
            ],            
        ],        
    ],
];

使用DBLIB驱动程序,这些驱动程序免费且高效。使用下面的代码

$connPdo=newpdo(“dblib:host=localhost;dbname=dbname;”、“用户名”、“密码”)


在ZF3示例中,您似乎正在使用MySQL驱动程序,因此首先要确保使用正确的驱动程序。它适用于核心php$conn=odbc_connect(“DRIVER={Devart-odbc-DRIVER for-ASE};Server=Develop;Database=poc7”、“sa”和“);但我希望它在ZF3中