--TEST-- oci_lob_truncate() --SKIPIF-- --FILE-- write($str)); oci_commit($c); $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE"; $s = oci_parse($c, $select_sql); oci_execute($s, OCI_DEFAULT); var_dump($row = oci_fetch_array($s)); oci_commit($c); for ($i = 5; $i >= 0; $i--) { $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE"; $s = oci_parse($c, $select_sql); oci_execute($s, OCI_DEFAULT); $row = oci_fetch_array($s); var_dump($row['BLOB']->load()); var_dump($row['BLOB']->truncate(($i-1)*10)); oci_commit($c); } $select_sql = "SELECT blob FROM ".$schema.$table_name." FOR UPDATE"; $s = oci_parse($c, $select_sql); oci_execute($s, OCI_DEFAULT); $row = oci_fetch_array($s); var_dump($row['BLOB']->load()); var_dump($row['BLOB']->truncate(-1)); var_dump($row['BLOB']->truncate(0)); oci_commit($c); require dirname(__FILE__).'/drop_table.inc'; echo "Done\n"; ?> --EXPECTF-- object(OCI-Lob)#%d (1) { ["descriptor"]=> resource(%d) of type (oci8 descriptor) } int(72) array(2) { [0]=> object(OCI-Lob)#%d (1) { ["descriptor"]=> resource(%d) of type (oci8 descriptor) } ["BLOB"]=> object(OCI-Lob)#%d (1) { ["descriptor"]=> resource(%d) of type (oci8 descriptor) } } string(72) "this is a biiiig faaat test string. why are you reading it, I wonder? =)" bool(true) string(40) "this is a biiiig faaat test string. why " bool(true) string(30) "this is a biiiig faaat test st" bool(true) string(20) "this is a biiiig faa" bool(true) string(10) "this is a " bool(true) string(0) "" Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d bool(false) string(0) "" Warning: OCI-Lob::truncate(): Length must be greater than or equal to zero in %s on line %d bool(false) bool(true) Done