Hướng dẫn dùng emploding trong PHP

Khi học lập trình PHP bạn sẽ gặp rất nhiều hàm liên quan đến chuỗi và mảng. Hôm nay mình sẻ một hàm cũng thường được sử dụng khi sử dụng PHP đó là hàm explode().

  • Hàm Explode trong PHP
  • Hàm Implode trong PHP

Với Explode() chúng ta sẽ dùng để tách chuỗi ra thành một mảng.

Cú pháp:

explode(separator,string,limit)

Ví dụ:




Ví dụ hàm Explode PHP

Và kết quả sau khi chạy đoạn code trên:

Các tham số cần lưu ý khi dùng explode php:

separator: Bắt buộc phải có.

string: Bắt buộc phải có chuỗi thì hàm explode mới thực thi.

limit: Không bắt buộc.

0: Trả về mảng 1 phần tử

<0: Cũng ví dụ trên nếu bạn thêm -1 nó sẽ bớt đi một phần phần tử vừa tách chuỗi.

>0: Trả về mảng có giá trị không vượt qua tham số limit. Cũng ví dụ lúc nãy bạn thêm +2 kết quả như này

Hàm Implode trong PHP

Ngược lại với Explode() thì Implode() sẽ gộp phần tử  mảng ($array) thành chuỗi.

Cú pháp:

implode(separator,array);

Ví dụ:


Sau khi chạy bạn nhận được kết quả:

Oke xong rồi đấy! Qua bài viết này bạn đã được biết về Explode và Implode trong PHP. Để hiểu rõ hơn thì nên chạy ví dụ nhé!

Hàm implode() sẽ nối các phân tử của mảng lại thành một chuỗi, hàm sẽ trả về chuỗi bao gồm các phần tử của mảng được ngăn cách bằng một kí tự nào đó được truyền vào.

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

Hàm implode() có cách chức năng tương tự như hàm join().

Cú pháp

Cú phápimplode( $char, $arrr);

Trong đó:

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

  • $char là kí tự ngăn cách các phần tử.
  • $arr là mảng dữ liệu truyền vào.

Ví dụ

Ví dụ 1: Chuyển một mảng đơn giản thành một chuỗi:

Code

$array = array(
	'PHP',
	'CSS',
	'JS'
	);
$str = implode(",", $array);

echo $str ;

Ví dụ 2: Nếu mảng rỗng được truyền vào, hàm sẽ trả về chuỗi rỗng:

Code

$str = implode(",", array());

echo $str ;

Tham khảo : php.net

Hàm implode dùng để nối các phần tử mảng thành một chuỗi kết quả. Hàm này được sử dụng ở PHP 4, PHP 5 và PHP 7 và là hàm an toàn nhị phân.

string implode ( string $separator , array $array )

string implode ( array $array)

Tham số

  • $separator: Tham số tùy chọn định nghĩa giá trị ngăn cách giữa các phần tử mảng khi nối chuỗi. Mặc định có giá trị là chuỗi rỗng (“”).
  • $array: mảng chứa các phần tử cần kết nối.

Giá trị trả về

Giá trị hàm trả về chứa một chuỗi kết quả là chuỗi được nối các phần tử trong mảng theo thứ tự từ trái sang phải, có thể ngăn cách giữa các phần tử là giá trị $separator.

Ví dụ 1

Trong ví dụ sau, bạn nối 3 phần tử trong mảng là “website”, “dammio” và “com” với nhau với ngăn cách dấu gạch ngang (-).

Ví dụ 2

Bạn có thể tạo danh sách list bằng phần tử li, ul bằng đoạn mã ngắn gọn như sau.

  • " . implode("
  • ", $elements) . "
  • "; //Kết quả là danh sách list // * DAMMIO // * Mục 1 // * Mục 2 // * Mục 3 ?>

    Ví dụ 3

    Hàm implode còn thể có thể nối các phần tử chuỗi và số với nhau, khi đó số được chuyển thành các chuỗi.

    Ví dụ 4

    Nối các phần tử chuỗi trong mảng theo thứ từ phải sang trái bằng cách kết hợp hàm đảo chuỗi array_reverse() và hàm implode().

    Hàm liên quan

    Một số hàm liên quan:

    • explode() – Tách 1 chuỗi bằng 1 chuỗi
    • preg_split() – Tách chuỗi bằng một biểu thức chính quy
    • http_build_query() – Tạo chuỗi truy vấn mã hóa URL

    Hàm implode() sẽ nối các phân tử của mảng lại thành một chuỗi, hàm sẽ trả về chuỗi bao gồm các phần tử của mảng được ngăn cách bằng một kí tự nào đó được truyền vào.

    Nội dung chính

    • 1. Cơ bản về hàm explode trong PHP
    • 2. Các ví dụ thực tế sử dụng hàm explode
    • 2.1 Ví dụ đơn giản về explode
    • 2.2 Ví dụ phân tách từ khóa trong một danh sách từ khóa sử dụng explode
    • 2.3 Lọc họ tên người dùng sử dụng php explode
    • 3. Kết luận

    Nội dung chính

    • 1. Cơ bản về hàm explode trong PHP
    • 2. Các ví dụ thực tế sử dụng hàm explode
    • 2.1 Ví dụ đơn giản về explode
    • 2.2 Ví dụ phân tách từ khóa trong một danh sách từ khóa sử dụng explode
    • 2.3 Lọc họ tên người dùng sử dụng php explode
    • 3. Kết luận

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

    Hàm implode() có cách chức năng tương tự như hàm join().

    Cú pháp

    Cú phápimplode( $char, $arrr);

    Trong đó:

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

    • $char là kí tự ngăn cách các phần tử.
    • $arr là mảng dữ liệu truyền vào.

    Ví dụ

    Ví dụ 1: Chuyển một mảng đơn giản thành một chuỗi:

    Code

    $array = array(
    	'PHP',
    	'CSS',
    	'JS'
    	);
    $str = implode(",", $array);
    
    echo $str ;

    Ví dụ 2: Nếu mảng rỗng được truyền vào, hàm sẽ trả về chuỗi rỗng:

    Code

    $str = implode(",", array());
    
    echo $str ;

    Tham khảo : php.net

    Bài viết được sự cho phép của tác giả Kien Dang Chung

    Nội dung chính

    • 1. Cơ bản về hàm explode trong PHP
    • 2. Các ví dụ thực tế sử dụng hàm explode
    • 2.1 Ví dụ đơn giản về explode
    • 2.2 Ví dụ phân tách từ khóa trong một danh sách từ khóa sử dụng explode
    • 2.3 Lọc họ tên người dùng sử dụng php explode
    • 3. Kết luận

    Từ phiên bản PHP 4, có một số các hàm xử lý chuỗi rất tiện lợi như explode, implode… giúp cho công việc phân tích, sàng lọc chuỗi dễ chịu hơn nhiều. Trong bài viết này chúng ta sẽ làm quen với hàm explode trong PHP cùng với một số ví dụ hay dùng trong thực tế.

    Tuyển dụng php nhiều vị trí up to 20M

    1. Cơ bản về hàm explode trong PHP

    Hàm explode trong PHP cho phép bạn chuyển một chuỗi sang một mảng dựa trên các ký tự phân cách. Trong thực tế, xử lý chuỗi là rất cần thiết và sử dụng khá thường xuyên, ví dụ khi bạn muốn tách họ và tên của một người dùng, tách từng từ khóa trong một danh sách từ khóa có phân cách bằng một ký tự nào đó… Cú pháp của hàm explode:

    explode(separator,string,limit)

    Trong đó:

    • separator: ký tự hoặc chuỗi ký tự phân cách sử dụng để phân biệt các phần tử trong chuỗi.
    • string: chuỗi cần tách thành mảng.
    • limit: xác định số phần tử của mảng đầu ra.
      • >0: trả về mảng có số phần tử là limit phần tử đầu
      • <0: trả về mảng có số phần tử là limit phần tử cuối
      • 0: trả về mảng với 1 phần tử

    Chú ý: Hàm explode được giới thiệu từ phiên bản PHP 4, tham số limit được thêm vào từ PHP 4.1 và hỗ trợ giá trị âm từ PHP 5.1.0.

    2. Các ví dụ thực tế sử dụng hàm explode

    2.1 Ví dụ đơn giản về explode

    Một cách đơn giản để lưu nhiều giá trị vào một cột đó là sử dụng dấu phân cách, cách thức này được sử dụng khá nhiều trước đây khi chưa có các công nghệ như XML, JSON… Ví dụ trong một bảng dữ liệu để lưu thông tin người dùng trong một cột người ta sử dụng chuỗi !# để phân cách các thông tin: Nguyễn Văn A!#19810101!#Hà Nội!#

    Để bóc tách chuỗi này chúng ta sử dụng explode

    $strUserInformation = "Nguyễn Văn A!#19810101!#Hà Nội!#"; $arrUserInformation = explode("!#", $strUserInformation); print_r($arrUserInformation);

    Kết quả: Array ( [0] => Nguyễn Văn A [1] => 19810101 [2] => Hà Nội [3] => )

    2.2 Ví dụ phân tách từ khóa trong một danh sách từ khóa sử dụng explode

    Trong các ứng dụng blog, CMS… trong các bài viết chúng ta thường nhập vào một danh sách từ khóa được phân cách với nhau bằng dấu , hoặc ; hoặc |… vậy làm thế nào để phân cách chuỗi từ khóa này thành một mảng tiện cho xử lý và lưu trữ vào CSDL?

    Ví dụ khi danh sách từ khóa, thẻ cho bài viết này như sau: “xử lý chuỗi trong PHP, explode trong PHP; PHP tách chuỗi | PHP string process”, ở đây dấu phân cách sử dụng rất đa dạng.

    $keywords = "xử lý chuỗi trong PHP, explode trong PHP; PHP tách chuỗi | PHP string process"; $delimiters = array(",",";","|"); $keywords = str_replace($delimiters, $delimiters[0], $keywords); $arrKeyword= explode($delimiters[0], $keywords); foreach ($arrKeywordas $key) { // Code xử lý cho từng từ khóa và lưu CSDL }

    Đầu tiên chúng ta thực hiện replace toàn bộ dấu phân cách về một loại, ở đây đưa hết về dấu phẩy. Tiếp theo, sử dụng explode như thông thường để thực hiện chuyển chuỗi thành mảng.

    2.3 Lọc họ tên người dùng sử dụng php explode

    Trong các ứng dụng để tránh cho người dùng phải mất quá nhiều thao tác khi nhập họ tên thường chúng ta đưa cả họ và tên đầy đủ vào một ô nhập liệu sau đó trong xử lý nghiệp vụ mới bóc tách họ, tên người dùng này. Ví dụ: “Nguyễn Văn A”, để bóc tách họ tên trong PHP chúng ta có thể sử dụng hàm explode:

    $fullName = "Nguyễn Văn A"; $arrName = explode(" ", $fullName); $firstName = array_shift($arrName); //Họ chính là phần tử đầu tiên của mảng $lastName = array_pop($arrName); //Tên chính là phần tử cuối cùng của mảng $middleName = implode(" ", $arrName); //Tên đệm chính là kết nối các phần tử còn lại

    Trong ví dụ trên có sử dụng hàm implode, trong PHP hàm này ngược lại với hàm explode. Hàm implode biến một mảng thành một chuỗi.

    3. Kết luận

    Qua bài viết bạn đã nắm được cách áp dụng explode một cách thành thục khi lập trình PHP. Sử dụng explode giúp giảm thời gian viết code, các xử lý chuỗi cũng đơn giản hơn khi kết hợp với các vòng lặp trong PHP. Nếu bạn có trường hợp nào cần xử lý chuỗi hãy để lại bình luận cuối bài viết nhé, chúng ta sẽ cùng thảo luận.

    Bài viết gốc được đăng tải tại allaravel.com

    Có thể bạn quan tâm:

    • Code PHP làm sao cho sạch (Phần 1)
    • Sử dụng mảng đúng cách trong PHP – Bạn đã bao giờ nghĩ?
    • Lập trình PHP và những câu hỏi thường gặp khi phỏng vấn

    Xem thêm tuyển dụng it job hấp dẫn trên TopDev