[PHP-users 33860] Re: oci_connect()の2回目以降の接続ハンドル

TANAKA Masayuki tanakamasayuki @ gmail.com
2008年 7月 17日 (木) 15:27:17 JST


こんにちは田中です

> マニュアルを見ると
> http://www.phpmanual.jp/function.oci-connect.html
>
> ----引用はじまり----
> 注意:  同じパラメータを使用して 2 回目やそれ以降に oci_connect() がコー
> ルされた場合、 最初のコールで返された接続ハンドルを返します。 これは 1
> つのハンドルに対して発行されたクエリは、 他のハンドルにも適用されること
> を意味します。
> ----引用ここまで----
>
> となっています。
>
> マニュアル通りだと$connにはループを何回しても'同じリソースID'がセットさ
> れるように思うのですが、ブラウザで見ると
>
> 1つ目 Resource id #3
> 2つ目 Resource id #5
> 3つ目 Resource id #7
> 4つ目 Resource id #9
> 5つ目 Resource id #11
> 6つ目 Resource id #13
> 7つ目 Resource id #15
> 8つ目 Resource id #17
> 9つ目 Resource id #19
> 10つ目 Resource id #21

WindowsXP+XAMPP(PHP Version 5.2.5)+Oracle Database 10g Express Edition

実証コード
<?php

for ($i=0;$i<10;$i++){
	$db_conn = ocilogon("user", "pass", "//127.0.0.1/XE");
	echo $i+1 . "つ目 " . $db_conn . "<br />";
}

結果
1つ目 Resource id #2
2つ目 Resource id #2
3つ目 Resource id #2
4つ目 Resource id #2
5つ目 Resource id #2
6つ目 Resource id #2
7つ目 Resource id #2
8つ目 Resource id #2
9つ目 Resource id #2
10つ目 Resource id #2

私の環境の場合、うまくうごいているようです

たなか


PHP-users メーリングリストの案内