# oci_error

(PHP 5, PECL oci8:1.1-1.2.4)

oci_error — Returns the last error found

### Description

array oci_error ([ resource `$source` ] )

Returns the last error found.

### Parameters

`source`

  For most errors, the parameter is the most appropriate resource handle. For connection errors with oci_connect(), oci_new_connect() or oci_pconnect() do not pass a parameter.

### Return Values

If no error is found, oci_error() returns `FALSE`. oci_error() returns the error as an associative array. In this array, code consists the oracle error code and message the oracle error string.

### ChangeLog

Version | Description
--- | ---
4.3 | offset and sqltext will also be included in the return array to indicate the location of the error and the original SQL text which caused it.

### Examples

Example#1 Displaying the Oracle error message after a connection error

`$conn = @oci_connect("scott", "tiger", "mydb");
if (!$conn) {
$e = oci_error(); // For oci_connect errors pass no handle
echo htmlentities($e['message']);
}`

Example#2 Displaying the Oracle error message after a parsing error

`$stmt = @oci_parse($conn, "select ' from dual"); // note mismatched quote
if (!$stmt) {
$e = oci_error($conn); // For oci_parse errors pass the connection handle
echo htmlentities($e['message']);
}`

Example#3 Displaying the Oracle error message and problematic statement after an execution error

`$r = oci_execute($stmt);
if (!$r) {
$e = oci_error($stmt); // For oci_execute errors pass the statementhandle
echo htmlentities($e['message']);
echo "<pre>";
echo htmlentities($e['sqltext']);
printf("\n%".($e['offset']+1)."s", "^");
echo "</pre>";
}`

### Notes

> Note: In PHP versions before 5.0.0 you must use ocierror() instead. This name still can be used, it was left as alias of oci_error() for downwards compatability. This, however, is deprecated and not recommended.