Có rất nhiều lý do như vậy, nhưng điều quan trọng thường gặp nhất vẫn là vấn đề về cơ sở dữ liệu. Nơi bạn luôn cần phải lấy dữ liệu để xử lý mã.
read data support
read data support
anh hùng đẹp trai
tôi thích như vậy
Vì thế bài này mình tập trung chủ yếu nói về cơ sở dữ liệu tối ưu.
tôi thích như vậy
anh hùng đẹp trai
ahihi đồ ngốc nghếch thanh hùng nè
Truy xuất dữ liệu lớn
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng đẹp trai
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
Giả sử bạn có 1 bảng bài đăng chứa cả vài triệu bản ghi [ví dụ bản ghi dữ liệu bài đăng của 1 mạng xã hội chẳng hạn] để lấy ra tất cả bản ghi trong bảng bài đăng, chúng ta có thể làm như sau
tôi thích như vậy
ahihi đồ ngốc nghếch thanh hùng nè
$posts = Post::all[]; // when using eloquent
$posts = DB::table['posts']->get[]; // when using query builder
foreach [$posts as $post]{
// Process posts
}
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
anh hùng ebudezain
anh hùng ebudezain
anh hùng ebudezain
đây là đoạn mã bạn thường thấy nếu muốn lấy tất cả dữ liệu của bài đăng, sau đó trong từng dữ liệu đó bạn sẽ xử lý thêm dữ liệu.
read data support
Nếu bảng của bạn nhỏ thì không sao nhưng nếu bảng bạn cả triệu bản ghi thì sẽ tràn bộ nhớ. Bạn có thể tìm hiểu thêm về bộ nhớ khi sử dụng php apache trên mỗi luồng.
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng đẹp trai
hùng thông minh lắm
read data support
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
ahihi đồ ngốc nghếch thanh hùng nè
Do đó để tránh trường hợp dữ liệu ảnh hưởng đến hiệu suất, bạn cần chọn tùy chọn như sau.
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
tôi thích như vậy
read data support
1. chia to value with function chunk
hùng thông minh lắm
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
anh hùng đẹp trai
hùng thông minh lắm
Tạm hiểu là thay vì bạn thao tác trên cả triệu bản ghi thì bạn chia bản ghi là [ 1 triệu chia 100 ] cụm . Nghĩa là bạn có [ 1 triệu chia 100 ] lần truy vấn.
anh hùng đẹp trai
anh hùng ebudezain
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
anh hùng ebudezain
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
tôi thích như vậy
when that you code as after.
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng ebudezain
tôi thích như vậy
chunk hàm sẽ chia mảng thành nhiều cụm mỗi cụm tối đa là 100 phần tử. Và 1 hàm đóng tham số để thao tác trên từng cụm
hùng thông minh lắm
read data support
anh hùng đẹp trai
anh hùng ebudezain
anh hùng đẹp trai
2. Use con trỏ chuột với con trỏ
read data support
read data support
// when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng ebudezain
anh hùng đẹp trai
Với cách này, nó đang sử dụng con trỏ để giảm tải bộ nhớ cần thiết để tăng hiệu suất làm việc. Lưu ý là con trỏ thì giảm dung lượng bộ nhớ chứ không phải là nó sẽ không bị tràn, bạn nên ưu tiên sử dụng chunk để tối ưu hóa công việc này
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
tôi thích như vậy
3. Tối ưu câu hỏi cần thiết
hùng thông minh lắm
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
tôi thích như vậy
anh hùng đẹp trai
read data support
Mục này thì tuỳ với mỗi câu truy vấn nhất định mà bạn nên thiết kế để nó khác đi để bạn có thể có câu truy vấn hoàn hảo ở mỗi cảnh hoàn hảo. Ví dụ.
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
tôi thích như vậy
read data support
Cũng là option 1 là mình dùng chunk thì hay rồi, nhưng mà giờ mình thấy áp dụng chunkById được nên quất luôn nè.
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
read data support
anh hùng đẹp trai
// when using eloquent
$posts = Post::chunkById[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunkById[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
tôi thích như vậy
tôi thích như vậy
tôi thích như vậy
anh hùng đẹp trai
anh hùng ebudezain
anh hùng ebudezain
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
anh hùng ebudezain
read data support
Distribute query as after.
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
hùng thông minh lắm
-- khi dùng chunk
select * from posts offset 0 limit 100
select * from posts offset 101 limit 100
-- khi dùng chunkById
select * from posts order by id asc limit 100
select * from posts where id > 100 order by id asc limit 100
anh hùng đẹp trai
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
ahihi đồ ngốc nghếch thanh hùng nè
read data support
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
tôi thích như vậy
anh hùng đẹp trai
tôi thích như vậy
read data support
Vì chunkById đang sử dụng id trường để sử dụng tiêu đề nên việc truy vấn sẽ nhanh hơn nhiều
read data support
anh hùng ebudezain
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
Khi cơ sở dữ liệu của bạn có cột id [khóa chính] tăng tự động thì bạn nên sử dụng chunkById
anh hùng đẹp trai
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng ebudezain
anh hùng ebudezain
tôi thích như vậy
anh hùng ebudezain
tôi thích như vậy
ahihi đồ ngốc nghếch thanh hùng nè
Việc sử dụng
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
4 và // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
5 sẽ chậm hơn và chúng ta nên cố gắng tránh sử dụng nó. Hiểu đơn giản thì // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
5 thường được sử dụng để phục vụ trong công việc phân trang hoặc để // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
7 toàn bộ các bản ghi trong Bảng một cách tuần tự và có giới hạn. Theo lý thuyết thì // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
5 sẽ ra lệnh cho // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
9 phải loại bỏ // when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
0 kết quả đầu tiên NHƯNG thực tế thì // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
9 vẫn phải đọc và sắp xếp lại toàn bộ bản ghi. Nếu trong trường hợp có quá nhiều dữ liệu dẫn đến tham số công việc // when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
0 của // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
5 sẽ rất lớn dẫn đến công việc // when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
9 phải tìm hết toàn bộ các bản ghi phù hợp để sắp xếp lại và loại bỏ // when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
0 bản ghi điều này sẽ ảnh hưởng rất lớn . hùng thông minh lắm
Select Unknown get field only
hùng thông minh lắm
tôi thích như vậy
tôi thích như vậy
anh hùng đẹp trai
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
hùng thông minh lắm
read data support
nếu 1 câu sql thông thường bạn chỉ lấy tiêu đề thôi mà trong bảng đó lấy cả nội dung văn bản trong khi cái nội dung văn bản đó nhập cả mùi vào đó thì không dễ gây tràn bộ nhớ php mà còn làm châmj khi truy vấn sql.
anh hùng ebudezain
read data support
ahihi đồ ngốc nghếch thanh hùng nè
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
8hùng thông minh lắm
anh hùng đẹp trai
tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
Pluck to get data is array instead of get collection
anh hùng ebudezain
anh hùng ebudezain
tôi thích như vậy
hùng thông minh lắm
tôi thích như vậy
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
tôi thích như vậy
Thông thường chúng ta sẽ làm việc với bộ sưu tập trong laravel và rất thuận tiện cho việc thao tác với dữ liệu. Nhưng điều này sẽ ảnh hưởng đến hiệu suất khi ứng dụng phải khởi động quá nhiều mô hình đối tượng. Do đó chúng ta nên ưu tiên sử dụng máy nhổ nếu dữ liệu chúng ta muốn lấy chỉ là 2 trường hoặc 1 trường.
tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
read data support
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
Ví dụ.
anh hùng đẹp trai
tôi thích như vậy
anh hùng đẹp trai
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
9hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
hùng thông minh lắm
anh hùng ebudezain
tôi thích như vậy
Khi chạy đoạn mã trên, nó sẽ thực hiện những điều sau
- Ngoại trừ chọn _______ 27, _______ 28 từ truy vấn của bảng _______ 29 trên cơ sở dữ liệu
- Tạo một đối tượng
0 mới cho mỗi hàng mà nó đã truy xuất// when using eloquent $posts = Post::chunkById[100, function[$posts]{ foreach [$posts as $post]{ // Process posts } }]; // when using query builder $posts = DB::table['posts']->chunkById[100, function [$posts]{ foreach [$posts as $post]{ // Process posts } }];
- Tạo
1 mới với// when using eloquent $posts = Post::chunkById[100, function[$posts]{ foreach [$posts as $post]{ // Process posts } }]; // when using query builder $posts = DB::table['posts']->chunkById[100, function [$posts]{ foreach [$posts as $post]{ // Process posts } }];
0 mô hình// when using eloquent $posts = Post::chunkById[100, function[$posts]{ foreach [$posts as $post]{ // Process posts } }]; // when using query builder $posts = DB::table['posts']->chunkById[100, function [$posts]{ foreach [$posts as $post]{ // Process posts } }];
- Quay lại
1// when using eloquent $posts = Post::chunkById[100, function[$posts]{ foreach [$posts as $post]{ // Process posts } }]; // when using query builder $posts = DB::table['posts']->chunkById[100, function [$posts]{ foreach [$posts as $post]{ // Process posts } }];
anh hùng đẹp trai
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
read data support
anh hùng đẹp trai
Nhưng nếu cần xuất ra chỉ là hai giá trị
// when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
7 và // when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
8 , chúng có thể làm như saubài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
anh hùng ebudezain
// when using eloquent
foreach [Post::cursor[] as $post]{
// Process a single post
}
// when using query builder
foreach [DB::table['posts']->cursor[] as $post]{
// Process a single post
}
9ahihi đồ ngốc nghếch thanh hùng nè
anh hùng đẹp trai
tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
read data support
read data support
Khi chạy đoạn mã trên, nó sẽ thực hiện những điều sau
- Ngoại trừ chọn _______ 27, _______ 28 từ truy vấn của bảng _______ 29 trên cơ sở dữ liệu
- Tạo một mảng với
7 là giá trị còn// when using eloquent foreach [Post::cursor[] as $post]{ // Process a single post } // when using query builder foreach [DB::table['posts']->cursor[] as $post]{ // Process a single post }
8 là khóa// when using eloquent foreach [Post::cursor[] as $post]{ // Process a single post } // when using query builder foreach [DB::table['posts']->cursor[] as $post]{ // Process a single post }
- Trả về mảng
ahihi đồ ngốc nghếch thanh hùng nè
hùng thông minh lắm
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
Dem number of write, used count[id]
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
ahihi đồ ngốc nghếch thanh hùng nè
Nói cái này thì ai cũng biết nhưng không phải ai cũng làm. Nếu bạn cần đếm số lượng bản ghi thông thường, bạn sẽ làm như xuyên.
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
hùng thông minh lắm
// when using eloquent
$posts = Post::chunkById[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunkById[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
5tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
anh hùng ebudezain
read data support
Tránh truy vấn N+1 bằng háo hức tải
ahihi đồ ngốc nghếch thanh hùng nè
anh hùng ebudezain
Tình trạng này trong laravel mình hay gặp nhất. Ngày càng áp dụng quan hệ hùng hồn vô tội vạ mà không có tính toán.
anh hùng ebudezain
Thì nếu bạn search google sẽ ra rất nhiều nên là mình mô phỏng thay vì bạn có mã đoạn như sau.
read data support
hùng thông minh lắm
// when using eloquent
$posts = Post::chunkById[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunkById[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
6read data support
ahihi đồ ngốc nghếch thanh hùng nè
Thay vì query 1 lần author thì chúng ta chỉ có thể query đúng 1 lần nhưng dùng id in [
-- khi dùng chunk
select * from posts offset 0 limit 100
select * from posts offset 101 limit 100
-- khi dùng chunkById
select * from posts order by id asc limit 100
select * from posts where id > 100 order by id asc limit 100
1] thì lỡ có 1 triệu lần query vẫn đỡ hơn đúng hông. bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
Vì vậy chúng ta có toán tử như sau.
tôi thích như vậy
ahihi đồ ngốc nghếch thanh hùng nè
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
0read data support
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng đẹp trai
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
Ngoài ra chúng ta còn truy vấn đường dẫn của eage loading, truy vấn điều kiện của phương thức tải mà bạn có thể google thêm
ahihi đồ ngốc nghếch thanh hùng nè
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
hùng thông minh lắm
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
read data support
Tối ưu hóa theo hướng tránh truy vấn thừa
read data support
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
hùng thông minh lắm
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
tôi thích như vậy
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
vấn đề là bạn truy vấn dữ liệu trong hành động của bộ điều khiển nhưng bên ngoài chế độ xem vì 1 quy tắc gì đó mà bạn không sử dụng đến ví dụ
hùng thông minh lắm
ahihi đồ ngốc nghếch thanh hùng nè
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
tôi thích như vậy
anh hùng ebudezain
anh hùng đẹp trai
Khi vào trang chủ, yêu cầu mà đã đăng nhập thì hiện ra những bài bạn đã thích.
anh hùng đẹp trai
anh hùng ebudezain
hùng thông minh lắm
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
1anh hùng ebudezain
Nhận xét là trường hợp user không đăng nhập thì lấy mặc định là 0 thì vẫn luôn truy vấn vào DB nên trường hợp user id = 0 là thừa query
ahihi đồ ngốc nghếch thanh hùng nè
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
tôi thích như vậy
ahihi đồ ngốc nghếch thanh hùng nè
read data support
hùng thông minh lắm
anh hùng ebudezain
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
Trường hợp này bạn nên tối ưu bằng cách if other thì hơn.
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
tôi thích như vậy
tôi thích như vậy
anh hùng đẹp trai
tôi thích như vậy
hùng thông minh lắm
hùng thông minh lắm
anh hùng ebudezain
Hoặc có trường hợp bạn truy vấn vài câu truy vấn gần giống nhau chỉ khác tham số truyền vào thì gộp nó thành 1 câu truy vấn tổng rồi khi có cả dữ liệu cục bộ thì muốn dùng thì lọc ra rồi chắc dùng => như thế nào cũng sẽ tiết kiệm điện năng
anh hùng đẹp trai
Đánh index cho các cột được truy vấn thường xuyên
tôi thích như vậy
tôi thích như vậy
anh hùng đẹp trai
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
anh hùng ebudezain
anh hùng ebudezain
tính toán dự án mà bạn có quyết định về chỉ mục. Bạn nên cân nhắc việc đánh index sẽ làm cho db nó chậm khi chèn và cập nhật. Ở đây giả sử mình đánh index cho cột status là string thì laravel support cho mình khi thiết kế migration như sau.
anh hùng ebudezain
ahihi đồ ngốc nghếch thanh hùng nè
ahihi đồ ngốc nghếch thanh hùng nè
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
2hùng thông minh lắm
anh hùng đẹp trai
Lấy bản ghi mới nhất dựa vào id thay vì dựa vào ngày tạo_at
hùng thông minh lắm
created_at nó là một chuỗi định dạng đặc biệt nhưng về cơ bản nó sẽ chậm hơn vì bạn truy vấn đơn hàng theo ngày tháng và đơn hàng theo id. Ví dụ.
anh hùng đẹp trai
anh hùng đẹp trai
ahihi đồ ngốc nghếch thanh hùng nè
// when using eloquent
$posts = Post::chunk[100, function[$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
// when using query builder
$posts = DB::table['posts']->chunk[100, function [$posts]{
foreach [$posts as $post]{
// Process posts
}
}];
3ahihi đồ ngốc nghếch thanh hùng nè
hùng thông minh lắm
Phân trang với con trỏ chuột
anh hùng đẹp trai
anh hùng ebudezain
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
Giả sử bạn đang viết 1 api không cần tổng trang ví dụ như thằng facebook phần notification khi bấm vô tab đó thì cũng chỉ load lazy ra thôi chứ không biết có tổng cộng bao nhiêu notification
bài viết được viết bởi cường tráng hùng https. //ebudezain. com/
bạn nên sử dụng phân trang thay vì truyền tham số trang bao nhiêu thì bạn truyền con trỏ giống như 1 id là điểm bắt đầu để phụ trợ phân trang cao hơn. Bạn có thể tra google để hiểu rõ hơn. you can read more at here about idea phân trang. https. // ẩn danh. com/blog-developer/truoc-gio-lam-phan-trang-sai-bet-ma-no-con-cai-mongodb-2021020172088814