Hướng dẫn dùng control-m substr trong PHP

Hàm substr() giúp chúng ta cắt một phần của chuỗi ban đầu trong php.

Cú pháp

substr ( string $string , int $start [, int $length ] )

Input:

  • $string là chuỗi ban đầu
  • $start là vị trí cắt
  • $length là số ký tự cần cắt

Output: Một phần của chuỗi ban đầu được cắt, nếu thông số cắt không hợp lệ hàm trả về FALSE.

Chú ý:

  • Nếu $start có giá trị dương thì vị trí bắt đầu được đếm từ đầu đến cuối chuỗi và xuất phát từ 0. Ví dụ với chuỗi “abc” với vị trí 0 là bắt đầu ký tự “a”, vị trí 1 là “b”…
  • Nếu $start có giá trị âm thì đếm ngược từ cuối chuỗi và bắt đầu bằng giá trị 0. Vị trí ký tự cuối cùng của chuỗi là -1 ví thứ 2 từ sau đến là -2…
  • Nếu $length là số dương sẽ lấy tối đa các ký tự kể từ vị trí $start
  • Nếu $length là số âm sẽ loại bỏ $length ký tự từ cuối chuỗi.
  • Nếu $length bằng 0 hàm trả về False.

Ví dụ hàm substr()

Ví dụ 1: Tách chuỗi "Unitop" trong chuỗi "Unitop học web đi làm"

<?php
$str = "Unitop Hoc web di lam";
echo substr($str,0,6);
?>

Giải thích: Chuỗi "Unitop" vị trí đầu tiên nên $start = 0. Ngoài ra độ dài chuỗi này có 6 ký tự nên $length = 6.

Kết quả sau khi chạy chương trình

Unitop

Với lấy chuỗi này chúng ta có thể sử dụng những tham số sau vẫn có kết quả tương tự.

<?php
$str = "Unitop Hoc web di lam";
echo substr($str, 0, -15);

Giải thích: Lấy từ vị trí đầu tiên và loại bỏ 15 ký tự sau cùng của chuỗi.

Kết quả vẫn trả về chuỗi con

Unitop

Ví dụ 2: Tác thông tin của mã sinh viên.

Giả sử mã sinh viên được tạo ra bởi 2 phần.

  • Mã của lớp: ví dụ “TINK32”
  • Id của của sinh viên là chuỗi 7 ký tự cuối cùng

Nhiệm vụ cần xác định sinh viên thuộc lớp nào và id bao nhiêu.

<?php
$student = "TINK321061016";
$student_class = substr($student ,0,-7);
$student_id = substr($student ,-7);

echo "Class:{$student_class} <br> Id: {$student_id} ";

?>

Kết quả

Class:TINK32
Id: 1061016

Tổng kết

Qua 2 ví dụ trên bạn đã được hướng dẫn cách để sử dụng hàm substr() tách một phần của chuỗi trong php. Nội dung này cần tư duy khác nhiều nên bạn cần ghi chép và thực hành lại để nắm chắc bài học.

Hàm substr() sẽ trích xuất một phần của chuỗi, phần chuỗi được trích xuất sẽ tùy thuộc vào tham số truyền vào.

Hướng dẫn dùng control-m substr trong PHP

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Cú pháp

Cú phápsubstr( $str, $start, $lent);

Trong đó:

  • $str là chuỗi ban đầu.
  • $start là vị trí bắt đầu cắt trong chuỗi $str.
  • $lent là độ dài chuỗi con tính từ vị trí $start, nếu $lent âm hàm substr() sẽ trích xuất từ $start đến vị trí $lent( tính từ cuối chuỗi). Nếu vị trí $lent xuất hiện trước $start trong chuỗi $str hàm sẽ trả về FALSE.

Ví dụ

Một số trường hợp sử dụng hàm substr():

Bài viết này được đăng tại [free tuts .net]

Code

echo $rest = substr("abcdef", 0, 3) . "<br />";  
echo $rest = substr("abcdef", 0, -1) . "<br />";  
echo $rest = substr("abcdef", 2, -1) . "<br />";
if (substr("abcdef", 4, -4) == false) {
  	echo 'false' . "<br />";
}   
echo $rest = substr("abcdef", -3, -1) . "<br />"; 

Kết quả

abc
abcde
cde
false
de

Tham khảo: php.net

Bài này sẽ giới thiệu các hàm dùng để xử lý kiểu dữ liệu String trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP. Và các bạn cần đọc lại phần Kiểu dữ liệu String để biết cách tạo một String trong PHP.

1. Hàm strlen()

Hàm strlen() trong PHP có chức năng đếm độ dài của chuỗi ký tự (string). Các bạn đọc bài Đếm độ dài của chuỗi (string) với hàm strlen() trong PHP để biết cách sử dụng hàm này.

2. Hàm str_word_count()

Hàm str_word_count() trong PHP có chức năng đếm số từ (word) có trong chuỗi (string) hoặc trả về một mảng (array) chứa các từ trong chuỗi (string). Các bạn đọc bài Hàm str_word_count() trong PHP để biết cách sử dụng hàm này.

3. Hàm strrev()

Hàm strrev() trong PHP có chức năng đảo ngược (reverse) một chuỗi.

<?php
$domainname = "gochocit.com";
// output moc.ticohcog
echo strrev($domainname);
?>

Kết quả
moc.ticohcog

4. Hàm strpos()

Hàm strpos() trong PHP cho chức năng tìm kiếm một chuỗi cụ thể trong một chuỗi khác. Nếu tìm thấy, hàm strpos() trả về vị trí đầu tiên tìm thấy chuỗi. Nếu không tìm thấy, hàm strpos() sẽ trả về FALSE.

<?php
// output 6
echo strpos("gochocit.com", "it")."<br>";
// output FALSE
$result = strpos("gochocit.com", "admin");
var_dump($result);
?>
Kết quả
6
bool(false)

5. Hàm str_replace()

Hàm str_replace() trong PHP có chức năng tìm kiếm một chuỗi hoặc một mảng nào đó trong một chuỗi hoặc một mảng khác và thay thế nếu tìm thấy. Các bạn đọc bài Thay thế chuỗi hoặc mảng với hàm str_replace() trong PHP để biết cách sử dụng hàm này.

6. Hàm trim()

Hàm trim() giúp loại bỏ khoảng trắng hoặc một chuỗi cụ thể từ hai đầu của một chuỗi.

<?php
var_dump(" gochocit.com ");
echo "<br>";
var_dump(trim(" gochocit.com "));
echo "<br>";
var_dump(trim("gochocit.com", "go"));
echo "<br>";
var_dump(trim("gochocit.com", "om"));
echo "<br>";
var_dump(trim("gochocit.com", "goom"));
echo "<br>";
?>
Kết quả
string(14) " gochocit.com "
string(12) "gochocit.com"
string(10) "chocit.com"
string(10) "gochocit.c"
string(8) "chocit.c"

7. Hàm explode()

Hàm explode() giúp chuyển đổi một chuỗi (string) thành một mảng (array).

<?php
$welcome  = "Welcome to gochocit.com";
print_r(explode(" ", $welcome));
?>
Kết quả
Array ( [0] => Welcome [1] => to [2] => gochocit.com )

8. Hàm strtolower()

Hàm strtolower() giúp chuyển đổi một chuỗi thành một chuỗi chỉ gồm các ký tự thường (lowercase).

<?php
$welcome  = "WelCOME to GOCHOCIT.COM";
echo strtolower($welcome);
?>
Kết quả
welcome to gochocit.com

9. Hàm strtoupper()

Hàm strtoupper() giúp chuyển đổi một chuỗi thành một chuỗi chỉ gồm các ký tự hoa (uppercase).

<?php
$welcome  = "Welcome TO gochocit.COM";
echo strtoupper($welcome);
?>
Kết quả
WELCOME TO GOCHOCIT.COM

10. Hàm substr()

Hàm substr() trong PHP có chức năng lấy ra một chuỗi con trong chuỗi cha ban đầu. Chuỗi con được lấy ra phụ thuộc vào đối số truyền vào hàm substr(). Các bạn đọc bài Trích xuất chuỗi với hàm substr() trong PHP để biết cách sử dụng hàm này.

  • Hàm is_string() trong PHP
  • Các cấu trúc điều khiển vòng lặp for và for-each trong Java
  • Lớp FileReader và FileWriter trong Java
  • Khái niệm con trỏ (pointer) và cách khai báo biến con trỏ trong C++
  • Lớp dẫn xuất (derived class) trong lập trình hướng đối tượng với C++

PHP programming web programming