Fix*_*ker 7 php oracle codeigniter laravel
我一直在为我正在进行的项目寻找一个PHP框架.其中一个主要要求是与数据库交互的简便方法.最初这必须是Oracle,但将来有可能切换到不同的数据库后端.因此,我希望能够编写尽可能与数据库无关的代码.
我最初倾向于CodeIgniter,主要是因为它支持Oracle(它包括为了利用Oracle自己的OCI8驱动程序而编写的驱动程序).
Laravel是我考虑过的另一种选择.它似乎是一个流行的选项,即使有一些以前的CodeIgniter用户(例如,请参阅此答案).但是,它的Oracle支持似乎非常有限; 据我所知,Laravel广泛使用PDO,但PDO for Oracle是实验性的,不推荐使用.
有一种简单的方法可以使用Laravel以数据库无关的方式连接到Oracle吗?
Fix*_*ker 11
在研究了fideloper提供的链接之后,看起来一些有用的编码器继续为Oracle开发一个利用本机OCI8 PHP驱动程序功能的PDO用户空间驱动程序.
根据这个网站,这可以通过使用composer安装在Laravel中:
添加
yajra/laravel-oci8为要求composer.json:Run Code Online (Sandbox Code Playgroud){ "require": { "yajra/laravel-oci8": "*" } }然后运行:
Run Code Online (Sandbox Code Playgroud)composer updateComposer安装或更新您的软件包后,您需要注册服务提供商.打开app/config/app.php并找到提供者密钥并添加:
Run Code Online (Sandbox Code Playgroud)yajra\Oci8\Oci8ServiceProvider最后,您需要使用驱动程序"pdo-via-oci8"设置有效的数据库配置.像往常一样配置连接:
Run Code Online (Sandbox Code Playgroud)'connection-name' => array( 'host' => 'something', 'port' => 'something', 'username' => 'something', 'password' => 'something', 'charset' => 'something', 'prefix' => 'something', )
然后Laravel可以使用Eloquent等以数据库无关的方式访问Oracle.我已经给出了一些基本的测试,它似乎运行良好.
| 归档时间: |
|
| 查看次数: |
10720 次 |
| 最近记录: |