Hướng dẫn what is a blob php? - php blob là gì?

bởi Vincy. Sửa đổi lần cuối vào ngày 11 tháng 10 năm 2022.

Blob là một loại kiểu dữ liệu MySQL được gọi là các đối tượng lớn nhị phân. Theo tên của nó, nó được sử dụng để lưu trữ một khối lượng dữ liệu khổng lồ như các chuỗi nhị phân tương tự như các loại nhị phân và varbinary MySQL.

Phân loại MySQL Blob

Các loại blob mysqlĐộ dài lưu trữ tối đa (tính bằng byte)
Tinyblob((2^8) -1)
BÃI((2^16) -1)
Trung bình((2^24) -1)
Longblob((2^32) -1)

Trong hướng dẫn MySQL này cho phép chúng tôi học cách chèn và đọc MySQL Blob bằng PHP.

Hướng dẫn what is a blob php? - php blob là gì?

Để bắt đầu, chúng ta cần tạo một bảng MySQL với cột BLOB. Kịch bản SQL là,

structure.sql

CREATE TABLE `tbl_image` (
  `imageId` int(11) NOT NULL,
  `imageType` varchar(255) NOT NULL,
  `imageData` longblob NOT NULL
);

--
-- Indexes for dumped tables
--

--
-- Indexes for table `tbl_image`
--
ALTER TABLE `tbl_image`
  ADD PRIMARY KEY (`imageId`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `tbl_image`
--
ALTER TABLE `tbl_image`
  MODIFY `imageId` int(11) NOT NULL AUTO_INCREMENT;

Chèn hình ảnh dưới dạng blob mysql

Để chèn một hình ảnh vào cột Blob MySQL, các bước là,

  1. Tải lên tệp hình ảnh.
  2. Nhận thuộc tính hình ảnh (dữ liệu hình ảnh, loại hình ảnh, v.v.)
  3. Chèn tập tin hình ảnh vào một blob.

Tập lệnh PHP để chèn dữ liệu blob là,

index.php

 0) {
    if (is_uploaded_file($_FILES['userImage']['tmp_name'])) {
        $imgData = file_get_contents($_FILES['userImage']['tmp_name']);
        $imgType = $_FILES['userImage']['type'];
        $sql = "INSERT INTO tbl_image(imageType ,imageData) VALUES(?, ?)";
        $statement = $conn->prepare($sql);
        $statement->bind_param('ss', $imgType, $imgData);
        $current_id = $statement->execute() or die("Error: Problem on Image Insert
" . mysqli_connect_error()); } } ?> Upload Image to MySQL BLOB

Khi gửi biểu mẫu, mã PHP này có nội dung của tệp hình ảnh và lưu trữ nó vào cột Blob MySQL dưới dạng dữ liệu nhị phân.

Đọc hình ảnh Blob để hiển thị

Để hiển thị hình ảnh Blob cho trình duyệt, hãy tạo một tệp PHP và để thực hiện như sau. Tệp này sau đó sẽ được sử dụng làm nguồn thẻ để hiển thị hình ảnh vào trình duyệt.

  • Nhận dữ liệu hình ảnh được lưu trữ với trường Blob MySQL trong cơ sở dữ liệu.
  • Đặt loại nội dung là hình ảnh (hình ảnh/jpg, hình ảnh/gif, trên) bằng tiêu đề PHP ().
  • In hình ảnh BLOB Dữ liệu trong PHP.

imageView.php

prepare($sql);
    $statement->bind_param("i", $_GET['image_id']);
    $statement->execute() or die("Error: Problem on Retrieving Image BLOB
" . mysqli_connect_error()); $result = $statement->get_result(); $row = $result->fetch_assoc(); header("Content-type: " . $row["imageType"]); echo $row["imageData"]; } ?>

Mã PHP này sẽ hiển thị dữ liệu Blob hình ảnh MySQL. Từ thẻ hình ảnh HTML, chúng ta có thể tham khảo tệp PHP này với Image_id tương ứng làm đối số. Ví dụ,

" />

Tệp db.php có tập lệnh để kết nối cơ sở dữ liệu. Nó có biến đối tượng kết nối thường được đề cập trong tất cả các trang hoạt động cơ sở dữ liệu.


Hiển thị hình ảnh blob được tải lên trong một phòng trưng bày

Tệp llistimages.php được bao gồm trong trang đích bên dưới UI mẫu tải lên.

Nó hiển thị bộ sưu tập hình ảnh từ cơ sở dữ liệu. Phần tử hình ảnh thư viện đề cập đến ID bản ghi vào tệp PHP để lấy dữ liệu blob.

listimages.php

prepare($sql);
$stmt->execute();
$result = $stmt->get_result();
?>

num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        ?>
    
		">

Tải xuống

Trở lại đầu

Kiểu dữ liệu Blob được sử dụng để làm gì?

Kiểu dữ liệu Blob lưu trữ bất kỳ loại dữ liệu nhị phân nào trong các khối truy cập ngẫu nhiên, được gọi là sbspaces. Dữ liệu nhị phân thường bao gồm bảng tính đã lưu, các mô-đun tải chương trình, mẫu giọng nói số hóa, v.v. Máy chủ cơ sở dữ liệu không thực hiện giải thích nội dung của cột Blob.stores any kind of binary data in random-access chunks, called sbspaces. Binary data typically consists of saved spreadsheets, program-load modules, digitized voice patterns, and so on. The database server performs no interpretation of the contents of a BLOB column.

Mã trong mã là gì?

Một blob (đối tượng lớn nhị phân) là một chuỗi nhị phân có độ dài khác nhau có thể dài tới 2.147.483.647 ký tự.Giống như các loại nhị phân khác, chuỗi Blob không được liên kết với trang mã.Ngoài ra, chuỗi blob không giữ dữ liệu ký tự.a varying-length binary string that can be up to 2,147,483,647 characters long. Like other binary types, BLOB strings are not associated with a code page. In addition, BLOB strings do not hold character data.

Sự khác biệt giữa văn bản và blob là gì?

Blob là viết tắt của các đối tượng lớn nhị phân và như tên gọi của nó, nó có thể được sử dụng để lưu trữ dữ liệu nhị phân trong khi văn bản được sử dụng để lưu trữ số lượng lớn các chuỗi.Blob có thể được sử dụng để lưu trữ dữ liệu nhị phân có nghĩa là chúng ta có thể lưu trữ hình ảnh, video, âm thanh và chương trình.. BLOB can be used to store binary data that means we can store pictures, videos, sounds and programs also.

Cột Blob là gì?

Blob là họ loại cột dự định lưu trữ nhị phân có dung lượng cao.Loại cột Blob thực tế là bốn loại-tonyblob, blob, trung bình và longblob.Bốn loại blob rất giống nhau;Sự khác biệt duy nhất là lượng dữ liệu tối đa mà mỗi người có thể lưu trữ.the family of column type intended as high-capacity binary storage. The actual BLOB column type is of four types-TINYBLOB, BLOB, MEDIUMBLOB and LONGBLOB. The four BLOB types are very similar to each other; the only difference is the maximum amount of data each can store.