jjzjj

php - Alpinelinux下编译PHP OCI8扩展

我正在尝试编译PHPOCI8extension并在Alpinelinux下运行它.但似乎扩展对glibc中定义的符号有一些依赖性,但在musllibc中缺失.我可以使用现成的已编译PHPOCI8扩展吗?或者是否有任何解决方法可以使oci8扩展和oracle即时客户端与alpinelinux一起工作。提前致谢! 最佳答案 我的Alpine解决方案原来很简单:使用InstantClientv11(11.2.0.4)而不是v12(12.2.0.1):ENVLD_LIBRARY_PATH/usr/local/instantclientENV

php - Oracle 11g PHP oci_connect 失败 OCIEnvNlsCreate()

问题:LinuxCentOS/Oracle11g/InstantClient/PHP5.3.3错误:oci_connect():OCIEnvNlsCreate()失败。您的系统有问题-请检查ORACLE_HOME和LD_LIBRARY_PATH是否已设置并指向正确的目录phpinfo()相关部分:如您所见,环境变量已正确设置,我可以使用getenv()在页面上回应它们。我还检查了读取权限,我可以从网页上读取这些目录中的所有文件。客户端库文件在那里(我安装并重新安装了两次)完全安装。这些库是可读和可加载的。ldd没有显示任何错误。这是来自php文件的调用:$test=getenv('LD

ubuntu - PDO_OCI : could not find driver

今天我的问题与PDO、OCI8和PDO_OCI有关。但从一开始。我使用的是Ubuntu11.10和PHP版本:5.3.8-1ubuntu3。我已经安装了Oracle10gExpress,对其进行了配置并且运行良好。我必须做的下一步是Oracle和PDO之间的集成。所以我找到了这个链接:http://lacot.org/blog/2009/11/03/ubuntu-php5-oci8-and-pdo_oci-the-perfect-install.html并逐步执行(不安装PDO,它之前是使用pdo_mysql安装的)。当我尝试在Ubuntu10.10上执行此操作时-它正在运行。现在,在

php - oci_connect() 不会使用对象属性作为参数

参数(私有(private)字符串):$this->username='app';$this->password='passwd';$this->service='//local/DEV';不起作用:$conn=oci_connect($this->username,$this->password,$this->service);有效:$conn=oci_connect('app','passwd','//local/DEV');为什么oci_connect不喜欢将对象属性作为参数?使用对象属性时出现无效登录错误,但使用字符串时成功。所有这些代码都在对象的__construct()中。

php - Windows 服务器上的 OCI8 php 扩展安装

我在使OCI8在我的服务器安装上运行时遇到了具体问题。第一次设置:Win2008服务器32位ZendServerforPHPwithApache2.2没有php_oci8文件的PHP版本5.3.14没有安装oracle东西我需要能够连接到远程oracle数据库,所以我发现应该使用OCI8扩展。为了使OCI8工作,我还应该至少需要服务器上的OracleInstantClient,因为某些DLLOCI8需要。我做了什么?从他们的站点(oracledownloadsite)下载了OracleInstantClient,版本11.2.0.4.0解压到文件夹中,我选择ProgramFiles/o

php - 如何在 php 中使用 oci_new_collection?

我正在尝试使用php5调用存储过程,我的问题是如何正确使用“oci_new_collection”函数?我在php站点上找不到任何示例。对于需要传递给存储过程的变量之一,它使用此自定义用户定义表类型...SQL>descparameter_tableparameter_tableTABLEOFPARAMETER_TYPENameNull?Type----------------------------------------------------------NAMEVARCHAR2(200)VALUEVARCHAR2(4000)所以我的猜测是我需要使用oci_new_collecti

php - 无论如何要使用 OCI 在 PHP 中预览准备好的 SQL 语句?

想知道是否可以准备一个语句,绑定(bind)它,然后预览生成的SQL,如下所示(oci_preview_sql函数是一个占位符)://Gloriousdeclarationofanon-specificquery$statment=oci_parse($handle,"SELECTxFROMyWHEREvariable=:value");//Bindupsomevariablesoci_bind_by_name($statement,':value',$value);...//Locationofinterestoci_preview_sql($statement);//?isther

php oci8 - 如何设置 oracle 时间戳返回格式

我正在使用php5脚本从Oracle数据库中检索数据。我希望返回特定的时间戳格式。我在SO上找到了答案,说类似于Oracle本身的语句就可以解决问题:$stid=oci_parse($connection,"altersessionsetnls_date_format='yyyy-mm-ddhh24:mi:ss.ff3'");oci_execute($stid);这应该确保后续查询如$stid=oci_parse($connection,'select*fromtable');oci_execute($stid);导致时间戳格式以正确的格式返回。但无论我做什么,我总是得到像这样的格式2

php: 加载 oracle 驱动程序给出错误 "Unable to load dynamic library - The specified procedure could not be found."

我似乎对PHP有一个奇怪的问题。我已经将一堆软件从一台服务器迁移到另一台服务器。在服务器上,一些脚本与Oracle建立连接,因此为了能够建立连接,安装了oracle客户端并准备了一个tnsnames文件。来自sql*plus的连接有效。一些脚本使用PDO,因此我在php.ini中启用了extension=php_pdo_oci.dll。这些脚本就像一个魅力。其他一些脚本使用像oci_connect这样的函数,这些需要像php_oci8.dll这样的扩展。使用xammp(我用作apache/php/mysql包)php_oci8_12c.dll已交付,所以我认为扩展就足够了。启动服务器时

PHP 解释器使用 ADODB 获取未定义常量 OCI_COMMIT_ON_SUCCESS

我写了一个必须在php解释器(没有Apache)上运行的php脚本,它使用带有Oracle数据库的adodb库,但是当我尝试运行它时,出现以下错误:PHPNotice:UseofundefinedconstantOCI_COMMIT_ON_SUCCESS-assumed'OCI_COMMIT_ON_SUCCESS'inc:\proyect\backend\libraries\adodb\adodb.inc.phponline4248我已经检查过,并且启用了php_oci8和php_oci8_11g,所以常量应该被定义。此外,当我使用Apache运行此脚本时,它可以正常工作。提前致谢!