Cách sử dụng JSON trong Laravel

Hôm nay chúng ta sẽ học Cách lưu trữ JSON trong Cơ sở dữ liệu Laravel 9. Hướng dẫn này sẽ đề cập đến cách bạn có thể lưu trữ giá trị JSON vào cơ sở dữ liệu trong laravel 9

Nếu dữ liệu lớn hoặc cột không cố định thì bạn không thể tạo quá nhiều trường để lưu dữ liệu vào cơ sở dữ liệu. Sau đó, bạn phải lưu giá trị vào JSON trong cơ sở dữ liệu. Cách này load cơ sở dữ liệu mượt mà không cần phải tải vào cơ sở dữ liệu

Các bước về cách lưu trữ JSON trong cơ sở dữ liệu Laravel 9
  • Bước 1. Cài đặt ứng dụng Laravel 9 mới
  • Bước 2. Tạo cơ sở dữ liệu và di chuyển
  • Bước 3. Tạo mô hình
  • Bước 4. Tạo tuyến đường
  • Bước 5. Tạo bộ điều khiển
  • Bước 6. thử nghiệm
  • Bước 7. Phần kết luận

cũng đọc. Tạo ví dụ ứng dụng Ajax CRUD Laravel 9

Bước 1. Cài đặt ứng dụng Laravel 9 mới

Đầu tiên, chúng ta sẽ cài đặt một ứng dụng laravel 9 hoàn toàn mới. Để cài đặt ứng dụng laravel 9, hãy chạy lệnh sau trong terminal

composer create-project laravel/laravel save-json-appcd save-json-app

Ghi chú. “save-json-app” là tên ứng dụng laravel 9

Bước 2. Tạo cơ sở dữ liệu và di chuyển

Bây giờ chúng ta sẽ tạo một cơ sở dữ liệu. Mở phpmyadmin và tạo cơ sở dữ liệu mới với tên save-json-app

Nhập chi tiết cơ sở dữ liệu để. env như trong đoạn mã dưới đây

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=save-json-app
DB_USERNAME=root
DB_PASSWORD=

Bây giờ chúng ta sẽ tạo các mục di chuyển với các cột tiêu đề và dữ liệu (dưới dạng json). Để tạo di chuyển, hãy chạy lệnh sau trong terminal

php artisan make:migration create_items_table

Bây giờ, hãy mở tệp di chuyển các mục mà chúng ta có thể tìm thấy bên trong thư mục cơ sở dữ liệu/di chuyển và cập nhật đoạn mã sau

  
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('items', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->json('data')->nullable();

$table->timestamps();
});
}

/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('items');
}
};

Bây giờ hãy chạy di chuyển để tạo bảng mục

php artisan migrate

cũng đọc. Cách tạo RSS Feed trong Laravel 9 Ví dụ

Bước 3. Tạo mô hình

Bây giờ chúng ta sẽ tạo một mô hình vật phẩm. Để tạo mô hình vật phẩm, hãy chạy lệnh sau trong terminal

php artisan make:model Item

mở mục. php có thể tìm thấy bên trong Ứng dụng/Mô hình/và cập nhật mã sau

  
namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Casts\Attribute;

class Item extends Model
{
use HasFactory;

/**
* Write code on Method
*
* @return response()
*/
protected $fillable = [
'title', 'data'
];

/**
* Get the user's first name.
*
* @return \Illuminate\Database\Eloquent\Casts\Attribute
*/
protected function data(): Attribute
{
return Attribute::make(
get: fn ($value) => json_decode($value, true),
set: fn ($value) => json_encode($value),
);
}
}
Bước 4. Tạo tuyến đường

Bây giờ chúng ta sẽ tạo tuyến đường. nhập route sau vào routes/web. php

 
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\ItemController;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('item', [ItemController::class, 'index']);

cũng đọc. Tải lên tệp Ajax với Thanh tiến trình trong Laravel 9 Ví dụ

Bước 5. Tạo bộ điều khiển

Bước cuối cùng là tạo một ItemController. php. Tạo một tệp mới ItemController. php bên trong ứng dụng/Http/Bộ điều khiển và nhập mã sau vào bộ điều khiển

  
namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Item;

class ItemController extends Controller
{
/**
* Write code on Method
*
* @return response()
*/
public function index()
{
$input = [
'title' => 'Demo Title',
'data' => [
'1' => 'One',
'2' => 'Two',
'3' => 'Three'
]
];

$item = Item::create($input);

dd($item->data);

}
}
Bước 6. thử nghiệm

Bây giờ, đã đến lúc kiểm tra ứng dụng laravel của bạn. Đầu tiên khởi động máy chủ laravel bằng cách chạy lệnh sau

php artisan serve

và mở URL sau trong bất kỳ trình duyệt web nào

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=save-json-app
DB_USERNAME=root
DB_PASSWORD=
0

cũng đọc. Datatables Filter với Dropdown trong Laravel 9 Ví dụ

Bạn có thể xem đầu ra cơ sở dữ liệu và in đầu ra biến

Đầu ra cơ sở dữ liệu

How to Store JSON in Database Laravel 9

Cách lưu trữ JSON trong cơ sở dữ liệu Laravel 9

đầu ra

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=save-json-app
DB_USERNAME=root
DB_PASSWORD=
1Bước 7. Phần kết luận

Hôm nay, chúng ta đã học Cách lưu trữ JSON trong Cơ sở dữ liệu Laravel 9. Hy vọng hướng dẫn này đã giúp bạn học Laravel 9. Nếu bạn có bất kỳ câu hỏi nào, bạn có thể hỏi chúng tôi ở phần bình luận bên dưới. Nếu bạn thích hướng dẫn, vui lòng đăng ký Kênh YouTube của chúng tôi và theo dõi chúng tôi trên mạng xã hội Facebook và Instagram

Làm cách nào để chèn dữ liệu JSON vào Laravel?

Các bước về cách lưu trữ JSON trong cơ sở dữ liệu Laravel 9. .
Bước 1. Cài đặt ứng dụng Laravel 9 mới
Bước 2. Tạo cơ sở dữ liệu và di chuyển
Bước 3. Tạo mô hình
Bước 4. Tạo tuyến đường
Bước 5. Tạo bộ điều khiển
Bước 6. thử nghiệm
Bước 7. Phần kết luận

Làm cách nào để truy cập dữ liệu JSON trong Laravel?

2 câu trả lời .
Bạn đang chuyển đổi nó thành mảng và sau đó truy cập nó dưới dạng đối tượng. .
nó mảng kết hợp. .
trong PHP json_decode chuyển đổi dữ liệu json thành mảng kết hợp PHP For Ex. $php-array= json_decode($json-data, true);

Làm cách nào để mã hóa JSON trong Laravel?

Đây là cách sử dụng cơ bản để mã hóa JSON bằng gói này. .
1sử dụng Eastwest\Json\Facades\Json;
3$json = JSON. mã hóa (['khóa' => 'giá trị]);
5$mảng = JSON. giải mã ('{"key1". "giá trị1","key2". "giá trị2"}');
6// PGS = sai
7$mảng = JSON. giải mã ('{"key1". "giá trị1","key2". "giá trị2"}', sai);

Làm cách nào để hiển thị dữ liệu ở định dạng JSON trong Laravel?

Hiển thị hoạt động trên bài đăng này. .
Cột của bạn phải thuộc loại json type $table->json('data');
trong Mô hình của bạn, bạn cần truyền cột của mình thành một mảng. .
gửi giá trị dữ liệu đến bộ điều khiển của bạn phải là một mảng để bạn có thể sử dụng xác thực Laravel mảng trên đó