【问题标题】:ODBC Module in MAMP: Call to undefined function odbc_connect()MAMP 中的 ODBC 模块:调用未定义的函数 odbc_connect()
【发布时间】:2014-06-17 22:45:01
【问题描述】:

我花了一整天的时间尝试在 MAMP 中为我的 PHP 安装安装一个 ODBC 模块。在搜索了几个小时、尝试、失败并再次尝试之后,我终于设法编译了我的 pdo_odbc.so 文件,并且 MAMP 加载它很好(我使用 this guide,但我没有使用 pecl,而是使用 this instructions 编译自己)

正如您在我的 phpinfo() 的这张图片中看到的那样,MAMP 可以识别我的 unixODBC 驱动程序。

但是当我在我的代码中使用 odbc_connect() 时,我得到了这个错误:

致命错误:在 ... 中调用未定义函数 odbc_connect()

看起来,尽管 MAMP 识别 unixODBC 驱动程序,但我的网络应用程序并没有这样做。我需要在我的 php.ini 文件中添加一些额外的配置吗?

我不知道它是否与它有关,但我使用 Homebrew 安装了 unixODBC,并安装在 /usr/local/Cellar/unixodbc 中,但在我的 ./configure 命令中(在编译 ODBC 模块之前)我使用参数 --with-pdo-odbc=unixODBC who 在我的 /usr/local 文件夹中查找。我不知道这是否是错误的原因。

谢谢

【问题讨论】:

    标签: php macos odbc mamp


    【解决方案1】:

    “pdo_odbc”模块仅适用于对象:

    $dbh= new PDO('odbc:SOURCENAME', 'username', 'password');
    

    我使用“共享”选项编译 php 以创建 odbc.so 模块 (Adding ODBC to MAMP)

    ./configure --with-unixODBC=shared
    make
    
    cp modules/odbc.so /Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/
    
    echo "extension=odbc.so" >> /Applications/MAMP/bin/php/php5.5.10/conf/php.ini 
    

    【讨论】:

    • 我遵循了这些步骤,但我得到了这个 PHP 错误:dlopen(/Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20121212/odbc.so, 9): Symbol not found: __cg_jpeg_resync_to_restart Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO Expected in: /Applications/MAMP/Library/lib/libjpeg.8.dylib in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO in Unknown on line 0
    • 我在 MAMP 3.0.5 和 2.2 中尝试过 odbc.so。您使用什么版本的 OS X?我用的是 10.9.3。
    • 这里版本相同,10.9.3
    【解决方案2】:

    我已经避免使用 MAMP 并坚持使用默认的 Apache 等,并使用了这个包含 ODBC 的 PHP 安装,它工作得很好。

    请注意,自从 10.10 发布以来,最近的构建可能不包括 ODBC,但这个 PHP 构建已经挽救了生命。

    http://php-osx.liip.ch

    【讨论】:

    • 我试过了,但最新版本(5.6.14)不再包含 ODBC。
    猜你喜欢
    • 2017-08-23
    • 2018-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 2015-07-02
    相关资源
    最近更新 更多