IMO hoàn toàn có giá trị khi chuyển đổi từng bước sang cách tiếp cận OOP.
Đối với câu hỏi của bạn:
Có, bạn có thể sử dụng Eloquent độc lập.
Đây là trang web packagist: https://packagist.org/packages/illuminate/database
Thêm "illuminate/database": "5.0.*@dev"
tới composer.json
của bạn và chạy composer update
.Bây giờ bạn sẽ cần khởi động Eloquent. ( https://github.com/illuminate/database
)
Phần sau được sao chép từ readme của repo:
Hướng dẫn sử dụng
Đầu tiên, tạo một phiên bản trình quản lý "Capsule" mới. Capsule nhằm mục đích làm cho việc định cấu hình thư viện để sử dụng bên ngoài khuôn khổ Laravel dễ dàng nhất có thể.
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule;
$capsule->addConnection([
'driver' => 'mysql',
'host' => 'localhost',
'database' => 'database',
'username' => 'root',
'password' => 'password',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
]);
// Set the event dispatcher used by Eloquent models... (optional)
use Illuminate\Events\Dispatcher;
use Illuminate\Container\Container;
$capsule->setEventDispatcher(new Dispatcher(new Container));
// Set the cache manager instance used by connections... (optional)
$capsule->setCacheManager(...);
// Make this Capsule instance available globally via static methods... (optional)
$capsule->setAsGlobal();
// Setup the Eloquent ORM... (optional; unless you've used setEventDispatcher())
$capsule->bootEloquent();
Sau khi cá thể Capsule đã được đăng ký. Bạn có thể sử dụng nó như vậy:
Sử dụng Trình tạo truy vấn
$users = Capsule::table('users')->where('votes', '>', 100)->get();
Các phương thức cốt lõi khác có thể được truy cập trực tiếp từ Capsule theo cách tương tự như từ DB front:
$results = Capsule::select('select * from users where id = ?', array(1));
Sử dụng Trình tạo lược đồ
Capsule::schema()->create('users', function($table)
{
$table->increments('id');
$table->string('email')->unique();
$table->timestamps();
});
Sử dụng ORM hùng hồn
class User extends Illuminate\Database\Eloquent\Model {}
$users = User::where('votes', '>', 1)->get();
Để biết thêm tài liệu về cách sử dụng các cơ sở dữ liệu khác nhau mà thư viện này cung cấp, hãy tham khảo tài liệu khung Laravel.