Oci8
Package information:, (*1)
![Build Status][ico-travis]
, (*2)
Code Information:, (*3)
[
][link-coverage]
![Scrutinizer Score][ico-scrutinizer]
, (*4)
, (*5)
Oci8 is a wrapper for the PHP Oracle OCI functions that allows interaction
with Oracle databases by using objects in place of the regular oci_* functions., (*6)
Oci8 converts the warnings thrown by the oci_* function into Oci8Exceptions for better error handling., (*7)
Install
Via Composer, (*8)
``` bash
$ composer require jpina/oci8, (*9)
## Usage
Connect to a database, execute a query and fetch a row:
``` php
$db = new Jpina\Oci8Connection('username', 'password', '//localhost:1521/XE');
$statement = $db->parse('SELECT * FROM dual');
$statement->execute();
$row = $statement->fetchAssoc();
Handing errors, (*10)
try {
$db = new Jpina\Oci8Connection('username', 'password', '//localhost:1521/XE');
// Closing database to force an error on next statement
$db->close();
// This statement will throw an Oci8Exception since there is no active connection
$statement = $db->parse('SELECT * FROM dual');
} catch (Jpina\Oci8Exception $ex) {
// Handle the Exception
}
Change log
Please see CHANGELOG for more information what has changed recently., (*11)
Testing
In order to run the tests you will need access to an Oracle Database and copy the .env.example to .env, then you
can provide your own values within the .env, these values will be used by the tests to connect to the database., (*12)
You can run the tests with composer once you have your .env file configured properly., (*13)
bash
$ composer test, (*14)
If you don't have access to an Oracle Database server, you can also run a docker container like
wnameless/oracle-xe-11g and then connect to it to run the tests
against a containerized Oracle Database., (*15)
Contributing
Please see CONTRIBUTING and CONDUCT for details., (*16)
Security
If you discover any security related issues, please email jabdhel@gmail.com instead of
using the issue tracker., (*17)
Credits
License
The MIT License (MIT). Please see License File for more information., (*18)