1--TEST-- 2PDO_OCI: Attribute: Oracle Nulls 3--EXTENSIONS-- 4pdo 5pdo_oci 6--SKIPIF-- 7<?php 8require(__DIR__.'/../../pdo/tests/pdo_test.inc'); 9PDOTest::skip(); 10?> 11--FILE-- 12<?php 13 14require(__DIR__ . '/../../pdo/tests/pdo_test.inc'); 15 16function do_query($dbh) 17{ 18 var_dump($dbh->getAttribute(PDO::ATTR_ORACLE_NULLS)); 19 $s = $dbh->prepare("select '' as myempty, null as mynull from dual"); 20 $s->execute(); 21 while ($r = $s->fetch()) { 22 var_dump($r[0]); 23 var_dump($r[1]); 24 } 25} 26 27$dbh = PDOTest::factory(); 28 29print "PDO::ATTR_ORACLE_NULLS: Default: "; 30do_query($dbh); 31 32print "PDO::ATTR_ORACLE_NULLS: PDO::NULL_NATURAL: "; 33$dbh->setAttribute(PDO::ATTR_ORACLE_NULLS, PDO::NULL_NATURAL); // No conversion. 34 35do_query($dbh); 36 37print "PDO::ATTR_ORACLE_NULLS: PDO::NULL_EMPTY_STRING: "; 38$dbh->setAttribute(PDO::ATTR_ORACLE_NULLS, PDO::NULL_EMPTY_STRING); // Empty string is converted to NULL. 39 40do_query($dbh); 41 42print "PDO::ATTR_ORACLE_NULLS: PDO::NULL_TO_STRING: "; 43$dbh->setAttribute(PDO::ATTR_ORACLE_NULLS, PDO::NULL_TO_STRING); // NULL is converted to an empty string. 44 45do_query($dbh); 46 47echo "Done\n"; 48 49?> 50--EXPECT-- 51PDO::ATTR_ORACLE_NULLS: Default: int(0) 52NULL 53NULL 54PDO::ATTR_ORACLE_NULLS: PDO::NULL_NATURAL: int(0) 55NULL 56NULL 57PDO::ATTR_ORACLE_NULLS: PDO::NULL_EMPTY_STRING: int(1) 58NULL 59NULL 60PDO::ATTR_ORACLE_NULLS: PDO::NULL_TO_STRING: int(2) 61string(0) "" 62string(0) "" 63Done 64