uawdijnntqw1x1x1
IP : 216.73.216.136
Hostname : dhandapanilive
Kernel : Linux dhandapanilive 5.15.0-139-generic #149~20.04.1-Ubuntu SMP Wed Apr 16 08:29:56 UTC 2025 x86_64
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
OS : Linux
PATH:
/
var
/
www
/
html
/
oci8-3.0.1
/
tests
/
bind_char_3_11gR1.phpt
/
/
--TEST-- PL/SQL oci_bind_by_name with SQLT_AFC aka CHAR to CHAR parameter --SKIPIF-- <?php if (!extension_loaded('oci8')) die ("skip no oci8 extension"); require(__DIR__."/connect.inc"); // The bind buffer size edge cases seem to change each DB version. preg_match('/.*Release ([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)*/', oci_server_version($c), $matches); if (!(isset($matches[0]) && $matches[1] < 12)) { die("skip expected output only valid when using pre-Oracle 12c database"); } ?> --ENV-- NLS_LANG=.AL32UTF8 --FILE-- <?php require(__DIR__.'/connect.inc'); // Initialization $stmtarray = array( "create or replace function bind_char_3_fn(p1 char) return char as begin return p1; end;", ); oci8_test_sql_execute($c, $stmtarray); // Run Test echo "Test 1.1 In Length: default. In Type: default. Out Length: default. Out Type: default\n"; $s = oci_parse($c, "begin :bv2 := bind_char_3_fn(:bv1); end;"); $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1) && oci_bind_by_name($s, ':bv2', $bv2); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.2 In Length: default. In Type: default. Out Length: 10. Out Type: default\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.5 In Length: strlen. In Type: AFC. Out Length: strlen(input). Out Type: AFC\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1, strlen($bv1), SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, strlen($bv1), SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.6 In Length: strlen. In Type: AFC. Out Length: strlen(input)-1. Out Type: AFC\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1, strlen($bv1), SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, strlen($bv1)-1, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 1.7 In Length: strlen. In Type: AFC. Out Length: strlen(input)+1. Out Type: AFC\n"; $bv1 = 'abc'; $r = oci_bind_by_name($s, ':bv1', $bv1, strlen($bv1), SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, strlen($bv1)+1, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "\n\nTests with ''\n\n"; echo "Test 2.1 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.2 In Length: default. In Type: default. Out Length: 10. Out Type: default\n"; $r = oci_bind_by_name($s, ':bv1', $bv1) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.5 In Length: -1. In Type: AFC. Out Length: 0. Out Type: AFC\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 0, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.6 In Length: 0. In Type: AFC. Out Length: 0. Out Type: AFC\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, 0, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 0, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 2.7 In Length: 1. In Type: AFC. Out Length: 1. Out Type: AFC\n"; $bv1 = ''; $r = oci_bind_by_name($s, ':bv1', $bv1, 1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 1, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "\n\nTests with NULL\n"; echo "Test 3.1 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 3.2 In Length: default. In Type: default. Out Length: 10. Out Type: default\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 3.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 3.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 10, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 3.5 In Length: -1. In Type: AFC. Out Length: 0. Out Type: AFC\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 0, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); echo "Test 3.6 In Length: -1. In Type: AFC. Out Length: 1. Out Type: AFC\n"; $bv1 = null; $r = oci_bind_by_name($s, ':bv1', $bv1, -1, SQLT_AFC) && oci_bind_by_name($s, ':bv2', $bv2, 1, SQLT_AFC); if ($r) do_e($s); var_dump($bv1, $bv2); function do_e($s) { echo " Executing:\n"; $r = @oci_execute($s); if (!$r) { $m = oci_error($s); echo " Oci_execute error ORA-".$m['code']."\n"; return; } } // Cleanup $stmtarray = array( "drop function bind_char_3_fn" ); oci8_test_sql_execute($c, $stmtarray); echo "Done\n"; ?> --EXPECT-- Test 1.1 In Length: default. In Type: default. Out Length: default. Out Type: default Executing: Oci_execute error ORA-6502 string(3) "abc" NULL Test 1.2 In Length: default. In Type: default. Out Length: 10. Out Type: default Executing: string(3) "abc" string(3) "abc" Test 1.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default Executing: string(3) "abc" string(3) "abc" Test 1.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC Executing: string(3) "abc" string(10) "abc " Test 1.5 In Length: strlen. In Type: AFC. Out Length: strlen(input). Out Type: AFC Executing: string(3) "abc" string(3) "abc" Test 1.6 In Length: strlen. In Type: AFC. Out Length: strlen(input)-1. Out Type: AFC Executing: Oci_execute error ORA-6502 string(3) "abc" string(3) "abc" Test 1.7 In Length: strlen. In Type: AFC. Out Length: strlen(input)+1. Out Type: AFC Executing: string(3) "abc" string(4) "abc " Tests with '' Test 2.1 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC Executing: string(0) "" NULL Test 2.2 In Length: default. In Type: default. Out Length: 10. Out Type: default Executing: string(0) "" NULL Test 2.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default Executing: string(0) "" NULL Test 2.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC Executing: string(0) "" NULL Test 2.5 In Length: -1. In Type: AFC. Out Length: 0. Out Type: AFC Executing: string(0) "" NULL Test 2.6 In Length: 0. In Type: AFC. Out Length: 0. Out Type: AFC Executing: string(0) "" NULL Test 2.7 In Length: 1. In Type: AFC. Out Length: 1. Out Type: AFC Executing: string(0) "" NULL Tests with NULL Test 3.1 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC Executing: NULL NULL Test 3.2 In Length: default. In Type: default. Out Length: 10. Out Type: default Executing: NULL NULL Test 3.3 In Length: -1. In Type: AFC. Out Length: 10. Out Type: default Executing: NULL NULL Test 3.4 In Length: -1. In Type: AFC. Out Length: 10. Out Type: AFC Executing: NULL NULL Test 3.5 In Length: -1. In Type: AFC. Out Length: 0. Out Type: AFC Executing: NULL NULL Test 3.6 In Length: -1. In Type: AFC. Out Length: 1. Out Type: AFC Executing: NULL NULL Done
/var/www/html/oci8-3.0.1/tests/bind_char_3_11gR1.phpt