Hàm Explode() Trong PHP | TopDev
Có thể bạn quan tâm
Bài viết được sự cho phép của tác giả Kien Dang Chung
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ế.
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.
Tìm việc làm PHP đãi ngộ tốt trên TopDev
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!#anv@allaravel.com
Để bóc tách chuỗi này chúng ta sử dụng explode
<?php $strUserInformation = "Nguyễn Văn A!#19810101!#Hà Nội!#anv@allaravel.com"; $arrUserInformation = explode("!#", $strUserInformation); print_r($arrUserInformation);Kết quả: Array ( [0] => Nguyễn Văn A [1] => 19810101 [2] => Hà Nội [3] => anv@allaravel.com )
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.
<?php $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.
10 Frameworks tốt nhất hiện nay cho PHP 10 PHP Instagram Scripts & Widgets tốt nhất2.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:
<?php $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ạiTrong 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 ngay những tin đăng tuyển dụng IT mới nhất trên TopDev
Từ khóa » Tách Từng Ký Tự Trong Chuỗi Php
-
Tách Từng Ký Tự Trong Chuỗi Php - In4tintuc - Trang Tổng Hợp Online
-
Tách Từng Ký Tự Trong Chuỗi Php - Darkedeneurope
-
Hướng Dẫn Xử Lý Chuỗi Trong Php Mới Nhất 2020
-
Tách Từng Ký Tự Trong Chuỗi Php - Ta
-
Tách Chuỗi Theo Từng Dòng Php - Viblo
-
Explode - Tách Chuỗi - PHP - WebVN
-
Bài 20: Các Hàm Xử Lý Chuỗi Trong Php - Freetuts
-
Tách Từng Chữ Trong Chuỗi Với PHP - Diễn Đàn Tin Học
-
Chuỗi Ký Tự Trong Php
-
Các Hàm Xử Lý Chuỗi Trong PHP
-
Bài 7: Thao Tác Với Chuỗi Trong PHP | ECode
-
Các Hàm String Hay Sử Dụng Trong PHP
-
Substr: Hàm Cắt Một Phần Chuỗi Trong Php - .vn
-
Hướng Dẫn Sử Dụng Hàm Explode Trong PHP - Chickgolden
-
Hướng Dẫn Sử Dụng Hàm Explode Trong PHP - Quang An News
-
Tách Ngày Tháng Năm Trong Php Hàm Lấy Ra Ngày Trong Một ...
-
Các Hàm Xử Lý Chuỗi Thường Dùng Trong Php
-
Xóa Ký Tự Trong Chuỗi Php
-
Tách Chuỗi Trong C (strtok)