我在PHP中遇到oci_connect()
的问题。安装Oracle InstantClient(32 Bit)
并在apache/bin/
和xampp/php
文件夹中复制所需的* .dll后,我无法连接Oracle数据库。
我明白了:
致命错误:未捕获错误:调用未定义函数oci_connect() 在C:\ xampp \ htdocs \ OracleTest \ connect.php:9堆栈跟踪:#0 {main} 在第9行的C:\ xampp \ htdocs \ OracleTest \ connect.php中抛出。
还有一个问题是我无法加载动态库:
PHP警告:PHP启动:无法加载动态库 ' C:\ XAMPP \ PHP \分机\ php_oci8_11g.dll' - 指定的模块不能 被发现。在第0行的未知中
警告:PHP启动:无法加载动态库 ' C:\ XAMPP \ PHP \分机\ php_oci8_11g.dll' - 指定的模块不能 被发现。在第0行的未知中
我的代码是这样的:
$oc_conn = oci_connect('127.0.0.1/XE','****', '****');
if($oc_conn)
{
echo "Success!!!";
}
else
{
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
我在这个问题上挣扎了3个多星期......我真的需要帮助,谢谢你。
答案 0 :(得分:0)
"调用未定义的函数oci_connect()"似乎是由根本原因错误导致的次要错误。正如错误消息所示,根本原因错误似乎是PHP无法找到名为import pandas as pd
df1 = pd.read_csv("E:\Business\Economic Indicators\Consumer Price Index - Core (YoY) - European Monetary Union.csv")
df2 = pd.read_csv("E:\Business\Economic Indicators\Private loans (YoY) - European Monetary Union.csv")
df3 = pd.read_csv("E:\Business\Economic Indicators\Current Account s.a - European Monetary Union.csv")
df = pd.concat([df1, df2, df3], axis=1, join='inner')
df.set_index('DateTime', inplace=True)
print(df.head())
df.to_csv('df.csv')
的文件。 PHP将从php.ini中的C:\xampp\php\ext\php_oci8_11g.dll
语句中获取此文件名。您的php.ini似乎还将extension=php_oci8_12c.dll
定义为扩展代码所在的位置。
FIX:确保.dll位于C:\xampp\php\ext\
,而不只是C:\xampp\php\ext\
。另外,请确保.dll的名称为apache/bin
,而不是php_oci8_11g.dll
。
成功加载动态库/扩展将(通常)使您的PHP代码可以使用新的函数和类。加载oci.dll
后,您可能会发现php_oci8_11g.dll
错误也已修复。