Hướng dẫn hàm cắt chuỗi 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.

Dữ liệu hiển thị trên website luôn ở dạng chuỗi nên việc xử lý chuỗi trong PHP đặc biệt quan trọng. Nếu bạn nắm vững đồng thời xử lý thành thạo các hàm trong PHP bạn sẽ tốn ít thời gian, công sức hơn mà website lại chạy nhanh và ổn định. Trong bài chia sẻ này, BKNS sẽ giúp bạn có được thông tin về các hàm xử lý chuỗi trong PHP. Tham khảo ngay nhé!

Hướng dẫn hàm cắt chuỗi php
Tổng hợp các hàm xử lý chuỗi trong PHP

Mục lục

  • 1 1. Nguyên tắc xử lý chuỗi trong PHP
  • 2 2. Các hàm xử lý chuỗi trong PHP
    • 2.1 2.1 addcslashes($str, $char_list)
    • 2.2 2.2 addslashes ( $str )
    • 2.3 2.3 stripslashes ($str)
    • 2.4 2.4 crc32 ( $str )
    • 2.5 2.5 explode ( $delimiter , $string)
    • 2.6 2.6 Hàm implode($delimiter, $piecesarray);
    • 2.7 2.7 Hàm ord ( $string )
    • 2.8 2.8 Hàm xử lý chuỗi trong PHP – strlen($string)
    • 2.9 2.9 str_word_count($str)
    • 2.10 2.10 str_repeat(  $str, int $n  )
    • 2.11 2.11 str_replace( $chuoi_tim, $chuoi_thay_the, $chuoi_nguon )
    • 2.12 2.12 md5( $str)
    • 2.13 2.13 sha1($string)
    • 2.14 2.14 htmlentities($str)
    • 2.15 2.15 html_entity_decode($string)
    • 2.16 2.16 htmlspecialchars( $string)
    • 2.17 2.17 strip_tags( $string, $allow_tags )
    • 2.18 2.18 substr( $string,  $start, $length )
    • 2.19 2.19 Hàm strstr( $string, $ky_tu_cho_truoc )
    • 2.20 2.20 strpos($str, $chuoi_tim )
    • 2.21 2.21 strtolower($str);
    • 2.22 2.22 strtoupper($string );
    • 2.23 2.23 ucfirst( $string )
    • 2.24 2.24 ucwords( $string )
    • 2.25 2.25 trim($string, $ky_tu);
    • 2.26 2.25 ltrim($string, $ky_tu);
    • 2.27 2.26 rtrim($string, $ky_tu)
    • 2.28 2.27 nl2br($string)
    • 2.29 2.28 json_decode($json, $is_array)
    • 2.30 2.29 json_encode($array_or_object)

1. Nguyên tắc xử lý chuỗi trong PHP

Nguyên tắc thứ nhất: Để khi chèn biến không phải nối chuỗi bạn nên sử dụng ” “ (dấu nháy) để in ra chuỗi.

$str = "đang ăn tối";

echo "Nam nói\"Cậu ấy $str\" ";

Nguyên tắc thứ hai:  Các ký tự(nháy kép) đặt trong dấu nháy kép “” của chuỗi phải thêm dấu gạch chéo đằng trước.

echo "Nam nói\"Cậu ấy đang ăn tối\" ";

Nguyên tắc thứ ba: Nếu chuối được đặt trong dấu ” (nháy đơn) thì các ký tự (nháy đơn) trong chuỗi phải thêm dấu gạch chéo phía trước nó.

echo 'Freetuts's a website learning online';

2. Các hàm xử lý chuỗi trong PHP

Dưới đây là một số hàm xử lý chuỗi trong PHP phổ biến nhất

2.1 addcslashes($str, $char_list)

Thêm dấu / (gạch chéo) phía trước những ký tự trong chuỗi $str mà bạn liệt kê ở $char_list:

// a..z là gồm các từ từ a => z

echo (addcslashes('freetuts.net FREETUTS.NET', 'a..z'));

// kết quả: \f\r\e\e\t\u\t\s.\n\e\t

echo '<br />';

// a..zA..Z là gồm các từ từ a => z và A => Z

echo (addcslashes('freetuts.net FREETUTS.NET', 'a..zA..Z'));

2.2 addslashes ( $str )

Đây là hàm sẽ thêm dấu / (gạch chéo) trước ký tự (‘, “, \) trong chuỗi $str:

echo addslashes ("Freetuts's a website learning online");

// Kết quả là Freetuts's a website learning online

2.3 stripslashes ($str)

Hàm xóa các ký tự / (gạch chéo) trong chuỗi $str:

echo stripslashes("Mot so ham 'xu ly chuoi' trong PHP");

// Kết quả Mot so ham 'xu ly chuoi' trong PHP

2.4 crc32 ( $str )

Hàm chuyển chuỗi $str thành dãy số nguyên (tùy hệ điều hành sẽ chuyển thành số dương hoặc số âm):

echo crc32 ('freetuts.net');

// kết quả: -838644060

2.5 explode ( $delimiter , $string)

Hàm chuyển 1 chuỗi $string thành 1 mảng phần tử với ký tự tách mảng $delimiter:

<strong>// Chuỗi cần chuyển<br />

$str = 'freetuts.net is a website free for you';

 

// Mỗi khoảng trắng sẽ là một phần tử trong mảng<br />

var_dump(explode(' ', $str));

 

/*Kết quả

array

0 => 'freetuts.net',

1 => 'is',

2 => 'a' ,

3 => 'website',

4 => 'free',

5 => 'for' ,

6 => 'you' */</strong>

2.6 Hàm implode($delimiter, $piecesarray);

Chuyển 1 mảng $piecearray thành chuỗi, mỗi phần tử cách nhau bởi chuỗi $delimiter:

echo implode(' ', array(

'freetuts',

'xin',

'chào',

'các',

'bạn'

));

// kết quả là freetuts xin chào các bạn

2.7 Hàm ord ( $string )

Hàm trả mã ASCII của ký tự đầu trong chuỗi $string:

echo ord ('Ab');

// kết quả: 65

2.8 Hàm xử lý chuỗi trong PHP – strlen($string)

Đếm số ký tự chuỗi $string:

echo strlen('freetuts.net');

// kết quả: 12

2.9 str_word_count($str)

Đếm số từ trong chuỗi $str:

echo str_word_count('freetuts xin chào các bạn');

// kết quả là 5

2.10 str_repeat(  $str, int $n  )

Hàm lặp chuỗi $str $n lần:

echo str_repeat( 'Hello', 5 );

// Kết quả là HelloHelloHelloHelloHello

2.11 str_replace( $chuoi_tim, $chuoi_thay_the, $chuoi_nguon )

Tìm kiếm, thay thế chuỗi:

$str = 'Freetuts Xin Chào Các Bạn';

$str = str_replace( 'Freetuts', 'Freetuts.net', $str );

echo $str; // kết quả là Freetuts.net Xin Chào Các Bạn

Sử dụng mảng để truyền vào nếu muốn thay thế nhiều chuỗi:

$str = 'Freetuts Xin Chào Các Bạn';

$str = str_replace( array('Freetuts', 'Xin Chào'), array('Freetuts.net', 'Hello'), $str );

echo $str; // kết quả là Freetuts.net Hello Các Bạn

2.12 md5( $str)

Mã hóa chuỗi thành dãy 32 ký tự:

echo md5('freetuts.net');

// Kết quả: 83617175fd8cf470d4af657a28def98e

2.13 sha1($string)

Mã hóa chuỗi thành dãy 40 ký tự:

echo sha1('freetuts.net');

// kết quả 8d9fa09de2e997d8fbb544326b84d1f894cd3ca3

2.14 htmlentities($str)

Chuyển thẻ html trong chuỗi $str sang dạng thực thể của nó:

echo htmlentities('<b>freetuts.net</b>');

// Kết quả <b>freetuts.net</b>

2.15 html_entity_decode($string)

Chuyển các ký tự từ dạng thực thể sang dạng html:

$str = htmlentities('<b>freetuts.net</b>');

 

echo 'Entity: ' . $str . '<br/>';

echo 'Decode: ' . html_entity_decode($str);

2.16 htmlspecialchars( $string)

Chuyển thẻ html trong chuỗi $str sang dạng thực thể của nó.

2.17 strip_tags( $string, $allow_tags )

Chuyển các ký tự từ dạng thực thể sang dạng html.

2.18 substr( $string,  $start, $length )

Bỏ thẻ html trong chuỗi $string được khai báo ở $allow_tags:

echo strip_tags('<b>freetuts.net</b>', 'b');

2.19 Hàm strstr( $string, $ky_tu_cho_truoc )

Hàm tách chuỗi bắt đầu từ $ky_tu_cho_truoc đến hết chuỗi:

echo strstr('freetuts.net Xin Chào', 'Xin');

// Kết quả: Xin Chào

2.20 strpos($str, $chuoi_tim )

Xác định vị trí chuỗi $chuoi_tim trong $str:

echo strpos('freetuts.net chào các bạn', 'chào');

// kết quả 13

2.21 strtolower($str);

Chuyển các ký tự chuỗi $str sang dạng chữ thông thường.

2.22 strtoupper($string );

Chuyển các ký tự chuỗi $str sang dạng chữ hoa.

2.23 ucfirst( $string )

Chuyển ký tự đầu của chuỗi $str sang dạng chữ hoa.

2.24 ucwords( $string )

Chuyển từ đầu tiên của chuỗi $string sang dạng chữ hoa.

2.25 trim($string, $ky_tu);

echo trim(' freetuts.net ');

// kết quả: 'freetuts.net'

 

echo trim('freetuts.neth');

// kết quả: 'freetuts.net'

2.25 ltrim($string, $ky_tu);

Xóa ký tự $Sky_tu ở cuối và đầu chuỗi $str (chỉ xóa bên trái).

2.26 rtrim($string, $ky_tu)

Xóa ký tự $Sky_tu ở cuối và đầu chuỗi $str (chỉ xóa bên phải).

2.27 nl2br($string)

Hàm chuyển các ký tự như trim xuống dòng \n thành thẻ.

2.28 json_decode($json, $is_array)

Chuyển chuỗi dạng JSON sang các đối tượng mảng hay object.

2.29 json_encode($array_or_object)

Chuyển 1 mảng hoặc 1 đối tượng sang chuỗi dạng JSON.

Bài viết đã giúp bạn biết được các hàm xử lý chuỗi trong PHP. Hy vọng, đây là những thông tin hữu ích đối với bạn. BKNS được biết đến là nhà cung cấp dịch vụ CNTT, giải pháp mạng hàng đầu tại Việt Nam. BKNS không ngại chia sẻ, thảo luận cùng bạn, hãy cho chúng tôi biết những thắc mắc đó bằng cách để lại bình luận bên dưới. Ghé thăm website bkns.vn thường xuyên để không bỏ lỡ những bài chia sẻ hữu ích khác nhé!