Categories PHP-MySQL

Tạo hàm PHP lấy dữ liệu nhanh từ bảng CSDL

Nếu bạn hay phải thao tác với bảng dữ liệu thì đây có thể là cách nhanh gọn để lấy data. Nó là cách khá lười biếng, nhưng có tác dụng.

<?php

/* 
 * PHP functions to get data faster v1.2
 * MIT License
 * Nguyen Duc Anh - freehost.page
 */


///====================================================================


function default_table(){
    $tab = 'new_data_name'; // tên bảng mặc định

return $tab;    
}

/////////

function table($limit) { // xuất toàn bộ dữ liệu từ bảng
    require 'database.php';
    $tab = default_table();

    if (!is_numeric($limit)) {$limit = 10;}

    if ($limit == -1) {$qr = "SELECT * FROM $tab";} // -1 nghĩa là không giới hạn số lượng bản ghi, các số khác thì tuân theo số đó
    else {$qr = "SELECT * FROM $tab LIMIT $limit";}

    $rs = $db->query($qr); // foreach result để lấy một tên cột cụ thể

return $rs;}

///==================================================================== End code
  • default_table() để thiết lập tên mặc định cho bảng, phòng khi bạn có nhiều bảng khác nhau muốn thao tác, và thi thoảng muốn thay đổi tên mặc định này;
  • table($limit) chính là data mà ta sẽ lấy, trong đó $limit là giới hạn số hàng dữ liệu;
  • Nếu đầu vào là -1 ($limit), ví dụ table(-1), nghĩa là bạn lấy tất cả các hàng dữ liệu, tất cả các cột.
  • Nếu $limit nhập vào không phải số (do bạn thao tác nhầm) thì lấy giá trị 10.
  • Nếu $limit là số cụ thể, ví dụ 1000, thì có nghĩa là nó lấy 1000 hàng dữ liệu;
  • Vì cột dữ liệu của tôi ít, nên tôi lấy cả bảng, bạn nào thích có thể điều chỉnh mã để thao tác với chỉ cột dữ liệu mà các bạn muốn;

Tôi còn viết thêm hai hàm khá ngớ ngẩn dưới đây, gọi là siêu lười:

///=============================================================================

function b() { // tách dòng
    $rs = '<br>';
    
return $rs;    
}

/////////

function s() { // cách nhau
    $rs = ' | ';
    
return $rs;    
}

///=============================================================================

Dùng để xuống dòng nhanh và tách các thông tin. Khi tôi muốn xuống dòng chỉ cần gõ b() thế là xong thay vì '<br>';

Dĩ nhiên cái này làm trên localhost vì lười thôi các bạn, nếu chạy mã thực trên máy chủ trực tuyến, làm thế này không hay chút nào vì ảnh hưởng đến hiệu suất.

Back to Top