Hướng dẫn
Quảng cáo

Hàm sscanf() trong PHP

Hướng dẫn cách sử dụng hàm sscanf() trong lập trình PHP

Tác dụng của hàm sscanf()

Hàm sscanf()phân tích cú pháp đầu vào từ một chuỗi theo định dạng.

Hàm sscanf()đọc từ chuỗi và diễn giải nó theo định dạng đã chỉ định, được mô tả trong sprintf()chương tham chiếu hàm trước đó.

Bảng sau đây tóm tắt các chi tiết kỹ thuật của hàm này.

Giá trị trả về:

Nếu chỉ có hai tham số được truyền cho hàm này, thì các giá trị được phân tích cú pháp sẽ được trả về dưới dạng một mảng. Ngược lại, nếu các tham số tùy chọn được truyền vào, hàm sẽ trả về số lượng giá trị được gán. Các tham số tùy chọn phải được chuyển qua tham chiếu.

Ngoài ra, nếu có nhiều chuỗi con được mong đợi ở format (định dạng) hơn số có sẵn trong string , nullsẽ được trả về.
Phiên bản: PHP 4.0.1+

cú pháp

Cú pháp cơ bản của hàm sscanf() được đưa ra với:

sscanf(string, format, var1, var2, ...);

Ví dụ sau đây cho thấy hàm sscanf()đang hoạt động.

Ví dụ

<?php
// Sample string
$str = "John Carter (26)";

// Parsing the string
sscanf($str, "%s %s (%d)", $first, $last, $age);
echo "$first $last is a $age year old man.";
?>

Thông số

Hàm sscanf()chấp nhận các tham số sau.

Tham số Sự miêu tả
string Yêu cầu. Chỉ định chuỗi để phân tích cú pháp.
format

Yêu cầu. Chỉ định định dạng diễn giải cho chuỗi, được mô tả trong sprintf()chương tham chiếu hàm trước đó với những điểm khác biệt sau:

  • Chức năng không nhận biết ngôn ngữ.
  • F, g, Gbkhông được hỗ trợ.
  • Dlà viết tắt của số thập phân.
  • ilà viết tắt của số nguyên với phát hiện cơ sở.
  • nlà viết tắt của số lượng ký tự được xử lý cho đến nay.
  • sdừng đọc ở bất kỳ ký tự khoảng trắng nào.
var1 , var2 , ... Không bắt buộc. Chỉ định các biến sẽ chứa các giá trị được phân tích cú pháp.

Thêm ví dụ

Dưới đây là một số ví dụ khác cho thấy hàm sscanf() thực sự hoạt động như thế nào:

Trong ví dụ sau, các giá trị được phân tích cú pháp sẽ được trả về dưới dạng một mảng.

Ví dụ

<?php
// Sample string
$date = "January 15 2021";

// Parsing the string 
$result = sscanf($date, "%s %d %d");
print_r($result);
?>

Ví dụ sau đây cho thấy cách lấy các giá trị rgb nguyên tương đương từ các giá trị màu hex.

Ví dụ

<?php
// Sample hex color code
$hex = "#ff8800";

// Parsing string and get rgb values
list($s, $r, $g, $b) = sscanf($hex, "%1s%2x%2x%2x");
echo "<p style='background: rgb($r, $g, $b, 0.5)'>Alpha transparency<p>";
?>

Bài viết này đã giúp ích cho bạn?

Bài viết mới

Advertisements