darlane / oracle-laravel-vendor
laravel中oracle的供应商
dev-master
2018-11-22 07:29 UTC
Requires
- php: ^7.1
- illuminate/support: ^5.5
This package is not auto-updated.
Last update: 2024-09-29 05:08:22 UTC
README
laravel中oracle的供应商
在'app.php'的'providers'块中添加
\OracleLib\Providers\OracleServiceProvider::class
下一步
php artisan vendor:publish --provider="\OracleLib\Providers\OracleServiceProvider" --tag="config"
创建一个类似于示例中的特质
trait OracleRepositoryList
{
}
接下来,所有新的仓库添加到这个特质和AppServiceProvider中
/**
* @return FooRepository
*/
public function fooRepository()
{
return app(FooRepository::class);
}
在AppServiceProvider中
public function boot()
{
$this->app->singleton(FooRepository::class, function () {
return new FooRepository(app('oracle'));
});
}
在你想使用这个仓库的类中添加特质并按如下方式使用它
class FooClass
{
use OracleRepositoryList;
public function method()
{
$this->testRepository()->test()
}
}
示例:使用游标调用函数
$result = $this->execute(
[
'function' => 'devdb.get_stat',
'return_type' => 'cursor',
],
[
'p_id_user' => 1,
]);
$stats = array_keys_rename($result['cursor'], [
'EXPERIENCE' => 'experience',
'STATUS' => 'status',
'DT => 'date',
]);
$stats = array_keys_set_type($stats, [
'experience' => 'integer',
'status' => 'integer',
'credit_date' => 'date',
]);