× Giới thiệu Lịch khai giảng Tin tức Sản phẩm học viên

Chuyển đổi chuỗi thành mảng trong PHP bằng các phương thức khác nhau

08/02/2023 01:24

Bài viết này cung cấp một cái nhìn sâu sắc về việc chuyển đổi kiểu dữ liệu chuỗi thành mảng trong PHP và những lợi ích của việc đạt được điều này.

PHP là một ngôn ngữ nguồn mở được sử dụng để phát triển và viết kịch bản phía máy chủ. Nó được biết đến rộng rãi và được sử dụng để phát triển phía máy chủ. Nó hoạt động hiệu quả với các cơ sở dữ liệu như MySQL , Oracle, Microsoft SOL Server, PostgreSQL và nhiều cơ sở dữ liệu phổ biến khác. Nó cũng hỗ trợ xử lý tập tin và mã hóa dữ liệu . 

Nó hỗ trợ nhiều loại dữ liệu nguyên thủy khác nhau trong PHP. 8 loại dữ liệu được cung cấp trong PHP được phân loại thành 3 loại cụ thể là loại được xác định trước hoặc loại vô hướng, loại hợp chất và loại đặc biệt. Bài viết này cung cấp một cái nhìn sâu sắc về việc chuyển đổi kiểu dữ liệu chuỗi thành mảng trong PHP và những lợi ích của việc đạt được điều này.

 

Tại sao bạn cần chuyển đổi một chuỗi thành một mảng trong PHP?

Có nhiều trường hợp khi một mảng được coi là phù hợp hơn một chuỗi. Chẳng hạn, bạn có thể chuyển đổi mật khẩu được nhập dưới dạng đầu vào trong ứng dụng web thành một mảng trước khi lưu trữ chúng trong cơ sở dữ liệu . Điều này cung cấp bảo mật hơn và dễ dàng truy cập vào dữ liệu. Mảng có thể giúp bạn triển khai tổ chức dữ liệu tốt hơn và thao tác nhanh hơn. Khi bạn chuyển đổi một chuỗi thành một mảng, thao tác dữ liệu sẽ thuận tiện hơn. Là một ngôn ngữ kịch bản mạnh mẽ, PHP cung cấp nhiều phương thức dựng sẵn khác nhau để chuyển đổi một chuỗi thành một mảng. Bài viết này giải thích một số cách tiếp cận để đạt được nhiệm vụ này.

Sau đây là danh sách đầy đủ các phương thức có thể được sử dụng trong PHP để chuyển đổi một chuỗi thành một mảng.

  1. hàm str_split()
  2. separator("DELIMITER", STRING)
  3. hàm preg_split()
  4. hàm str_word_count()
  5. Lặp thủ công qua chuỗi
  6. Hàm json_decode()
  7. chức năng unserialize()

Các phương pháp khác nhau để chuyển đổi chuỗi thành mảng trong PHP

Có nhiều cách tiếp cận khác nhau, bao gồm các hàm dựng sẵn và cách tiếp cận thủ công được sử dụng để chuyển đổi chuỗi thành mảng trong PHP. 

  • hàm str_split()

Phương thức đầu tiên trong danh sách này là str_split(). Đây là một phương thức PHP dựng sẵn được sử dụng để chuyển đổi một chuỗi thành một mảng bằng cách chia chuỗi thành các chuỗi con nhỏ hơn có độ dài đồng đều và lưu trữ chúng trong một mảng. Nó không sử dụng bất kỳ loại dấu tách nào, nó chỉ tách chuỗi.

Cú pháp của hàm str_split() là:

str_split($initial_string, $splitter_length)

Thông số

  • $initial_string (bắt buộc): Tham số đầu tiên bạn truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.

 

  • $splitting_length (tùy chọn): Tham số thứ hai là một số nguyên biểu thị độ dài của các phần của chuỗi sau khi tách. Nó là một tham số tùy chọn. Nếu không được thông qua, hàm sẽ coi độ dài này là 1 theo mặc định.

 

Giá trị trả về

Hàm này trả về một mảng chứa các phần của chuỗi ban đầu. Nếu độ dài được truyền cho hàm vượt quá độ dài của chuỗi ban đầu, hàm sẽ trả về toàn bộ chuỗi dưới dạng một phần tử, ngược lại nếu độ dài nguyên nhỏ hơn một, hàm sẽ trả về false.

Ví dụ

nput:

"Program"

Output:

Array

(

    [0] => P

    [1] => r

    [2] => o

    [3] => g

    [4] => r

    [5] => a

    [6] => m

)

Input:

"Programming Language"

Output:

Array

(

    [0] => Prog

    [1] => ram

    [2] => ming

    [3] => Lang

    [4] => uage

)

The following example illustrates the working of the str_split() function to convert string to array in PHP.

<?php

    // define a string

    $my_string = 'Sample String';   

    // without passing length

    // length = 1 (by default)

    $my_array1 = str_split($my_string);

    // print the array

    echo "The array of default length elements is: ";

    print_r($my_array1); // s, a, m, p, l, e, s, t, r, i, n, g

    print("<br><br>");   

    // passing length as second argument

    // length = 3

    $my_array2 = str_split($my_string, 3);

    // print the array

    echo "The array of length 3 elements is: ";

    print_r($my_array2); // sam, ple, str, ing 

?>

Trong ví dụ trên, nó khởi tạo một biến $my_string1 với một chuỗi “Chuỗi mẫu”. Nó sử dụng phương thức str_split() để chuyển đổi chuỗi thành một mảng. Biểu thức sau chuyển chuỗi đến phương thức này mà không chuyển đối số độ dài.

$my_array1 = str_split($my_string); 

Theo mặc định, nếu bạn không chuyển dấu phân cách độ dài, nó sẽ lấy nó là 1. Vì vậy, nó chuyển đổi các phần tử riêng biệt của chuỗi thành các phần tử mảng. Và biểu thức sau chuyển 3 làm dấu phân cách độ dài, chuyển đổi chuỗi con có độ dài 3 thành các phần tử mảng.

$my_array2 = str_split($my_string, 3);

  • explode("DELIMITER", STRING);

PHP là một ngôn ngữ nguồn mở được sử dụng để phát triển và viết kịch bản phía máy chủ. Nó được biết đến rộng rãi và được sử dụng để phát triển phía máy chủ. Nó hoạt động hiệu quả với các cơ sở dữ liệu như MySQL , Oracle, Microsoft SOL Server, PostgreSQL và nhiều cơ sở dữ liệu phổ biến khác. Nó cũng hỗ trợ xử lý tập tin và mã hóa dữ liệu . 

Nó hỗ trợ nhiều loại dữ liệu nguyên thủy khác nhau trong PHP. 8 loại dữ liệu được cung cấp trong PHP được phân loại thành 3 loại cụ thể là loại được xác định trước hoặc loại vô hướng, loại hợp chất và loại đặc biệt. Bài viết này cung cấp một cái nhìn sâu sắc về việc chuyển đổi kiểu dữ liệu chuỗi thành mảng trong PHP và những lợi ích của việc đạt được điều này.

 

Tại sao bạn cần chuyển đổi một chuỗi thành một mảng trong PHP?

Có nhiều trường hợp khi một mảng được coi là phù hợp hơn một chuỗi. Chẳng hạn, bạn có thể chuyển đổi mật khẩu được nhập dưới dạng đầu vào trong ứng dụng web thành một mảng trước khi lưu trữ chúng trong cơ sở dữ liệu . Điều này cung cấp bảo mật hơn và dễ dàng truy cập vào dữ liệu. Mảng có thể giúp bạn triển khai tổ chức dữ liệu tốt hơn và thao tác nhanh hơn. Khi bạn chuyển đổi một chuỗi thành một mảng, thao tác dữ liệu sẽ thuận tiện hơn. Là một ngôn ngữ kịch bản mạnh mẽ, PHP cung cấp nhiều phương thức dựng sẵn khác nhau để chuyển đổi một chuỗi thành một mảng. Bài viết này giải thích một số cách tiếp cận để đạt được nhiệm vụ này.

Sau đây là danh sách đầy đủ các phương thức có thể được sử dụng trong PHP để chuyển đổi một chuỗi thành một mảng.

  1. hàm str_split()
  2. hàm ("DELIMITER", STRING)
  3. hàm preg_split()
  4. hàm str_word_count()
  5. Lặp thủ công qua chuỗi
  6. Hàm json_decode()
  7. chức năng unserialize()

Các phương pháp khác nhau để chuyển đổi chuỗi thành mảng trong PHP

Có nhiều cách tiếp cận khác nhau, bao gồm các hàm dựng sẵn và cách tiếp cận thủ công được sử dụng để chuyển đổi chuỗi thành mảng trong PHP. 

  • hàm str_split()

Phương thức đầu tiên trong danh sách này là str_split(). Đây là một phương thức PHP dựng sẵn được sử dụng để chuyển đổi một chuỗi thành một mảng bằng cách chia chuỗi thành các chuỗi con nhỏ hơn có độ dài đồng đều và lưu trữ chúng trong một mảng. Nó không sử dụng bất kỳ loại dấu tách nào, nó chỉ tách chuỗi.

Cú pháp của hàm str_split() là:

str_split($initial_string, $splitter_length)

Thông số

  • $initial_string (bắt buộc): Tham số đầu tiên bạn truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.

 

  • $splitting_length (tùy chọn): Tham số thứ hai là một số nguyên biểu thị độ dài của các phần của chuỗi sau khi tách. Nó là một tham số tùy chọn. Nếu không được thông qua, hàm sẽ coi độ dài này là 1 theo mặc định.

 

Giá trị trả về

Hàm này trả về một mảng chứa các phần của chuỗi ban đầu. Nếu độ dài được truyền cho hàm vượt quá độ dài của chuỗi ban đầu, hàm sẽ trả về toàn bộ chuỗi dưới dạng một phần tử, ngược lại nếu độ dài nguyên nhỏ hơn một, hàm sẽ trả về false.

Ví dụ

Đầu vào:

"Chương trình"

Đầu ra:

Mảng

(

    [0] => P

    [1] => r

    [2] => o

    [3] => g

    [4] => r

    [5] => một

    [6] => m

)

Đầu vào:

"Ngôn ngữ lập trình"

Đầu ra:

Mảng

(

    [0] => Tiến trình

    [1] => ram

    [2] => minh

    [3] => Lãng

    [4] => thời gian

)

Ví dụ sau minh họa hoạt động của hàm str_split() để chuyển chuỗi thành mảng trong PHP.

<?php

    // định nghĩa một chuỗi

    $my_string = 'Chuỗi mẫu';   

    // không truyền chiều dài

    // độ dài = 1 (theo mặc định)

    $my_array1 = str_split($my_string);

    // in ra mảng

    echo "Mảng các phần tử có độ dài mặc định là: ";

    print_r($my_array1); // s, a, m, p, l, e, s, t, r, i, n, g

    in("<br><br>");   

    // chuyển độ dài làm đối số thứ hai

    // chiều dài = 3

    $my_array2 = str_split($my_string, 3);

    // in ra mảng

    echo "Mảng có độ dài 3 phần tử là: ";

    print_r($my_array2); // sam, ple, str, ing 

?>

StringToArrayInPHP_1  

Trong ví dụ trên, nó khởi tạo một biến $my_string1 với một chuỗi “Chuỗi mẫu”. Nó sử dụng phương thức str_split() để chuyển đổi chuỗi thành một mảng. Biểu thức sau chuyển chuỗi đến phương thức này mà không chuyển đối số độ dài.

$my_array1 = str_split($my_string); 

Theo mặc định, nếu bạn không chuyển dấu phân cách độ dài, nó sẽ lấy nó là 1. Vì vậy, nó chuyển đổi các phần tử riêng biệt của chuỗi thành các phần tử mảng. Và biểu thức sau chuyển 3 làm dấu phân cách độ dài, chuyển đổi chuỗi con có độ dài 3 thành các phần tử mảng.

$my_array2 = str_split($my_string, 3);

 
  • separator ("DELIMITER", STRING);

 

Hàm separator () là một phương thức khác của PHP được sử dụng để chuyển đổi một chuỗi thành một mảng. Không giống như hàm str_split(), hàm này sử dụng dấu phân cách hoặc dấu phân cách cần được chuyển làm đối số cho hàm. Dấu phân cách này có thể là dấu phẩy (,), dấu chấm (.) hoặc bất kỳ thứ gì. Sau khi tách chuỗi thành các chuỗi con nhỏ hơn, hàm này lưu trữ chúng trong một mảng và trả về mảng đó.

Cú pháp của hàm separator() là

separator($separator, $initial_string, $no_of_elements)

Thông số

 

  • $separator: Dấu phân cách là một ký tự ra lệnh cho hàm separator() tách chuỗi bất cứ khi nào nó phát hiện dấu phân cách và lưu trữ chuỗi con đó trong mảng.
  • $initial_name: Tham số thứ hai được truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.
  • $no_of_elements (tùy chọn): Đây là tham số cuối cùng và là tham số tùy chọn được truyền cho hàm này. Tham số này biểu thị số lượng chuỗi mà nó sẽ tách chuỗi ban đầu. Con số này có thể là số dương, số âm hoặc số không.
  • Tích cực: Nếu số nguyên đã truyền là số dương, thì mảng sẽ lưu trữ nhiều phần tử này. Nếu bạn tách chuỗi thành nhiều hơn N số phần liên quan đến dấu phân cách, thì N-1 phần tử đầu tiên vẫn giữ nguyên và các phần tử còn lại kết hợp để tạo thành một phần tử duy nhất.
  • Zero: Nếu số nguyên đã truyền là 0, thì mảng sẽ chứa toàn bộ chuỗi dưới dạng một phần tử.
  • Âm: Nếu số nguyên truyền vào là số âm thì N phần tử cuối cùng của mảng sẽ bị cắt bỏ và nó sẽ trả về các phần tử còn lại. 

 

Giá trị trả về

Hàm separator () trả về một mảng chứa các phần chuỗi làm phần tử của nó.

PHP is an open-source language that is used for server-side development and scripting. It is widely known and used for server-side development. It works efficiently with databases like MySQL, Oracle, Microsoft SOL Server, PostgreSQL, and many other popular databases. It also supports file handling and data encryption

It supports a varied number of primitive data types in PHP. The 8 data types provided in PHP are categorized into 3 types namely, pre-defined or scalar type, compound type, and special type. This article gives an insight into the conversion of string data type to array in PHP and the advantages of achieving this.

 

Post Graduate Program: Full Stack Web Development

in Collaboration with Caltech CTMEENROLL NOW
Post Graduate Program: Full Stack Web Development

 

Why Do You Need to Convert a String to an Array in PHP?

There are many cases when an array is considered more suitable over a string. For instance, you can convert the passwords entered as input in a web application into an array before storing them in the database. This provides more security and ease of access to the data. Arrays can help you implement better data organization and faster operations. When you convert a string into an array, it makes data manipulation convenient. Being a powerful scripting language, PHP provides various in-built methods to convert a string to an array. This article explains several approaches to achieve this task.

Following is the complete list of methods that can be used in PHP to convert a string to an array.

  1. str_split() Function
  2. explode("DELIMITER", STRING)
  3. preg_split() Function
  4. str_word_count() Function
  5. Manually loop through the string
  6. json_decode() Function
  7. unserialize() Function

Different Methods to Convert String to Array in PHP

There are various approaches, including in-built functions and manual approaches that are used to convert string to array in PHP. 

  • str_split() Function

The first method in this list is str_split(). This is an in-built PHP method that is used to convert a string into an array by breaking the string into smaller sub-strings of uniform length and storing them in an array. It does not use any kind of separator, it just splits the string.

The syntax of the str_split() function is:

str_split($initial_string, $splitting_length)

Parameters

  • $initial_string (mandatory): The first parameter you pass to this function is the string that has to be converted into an array.

 

  • $splitting_length (optional): The second parameter is an integer that represents how long the parts of the strings will be after splitting. It is an optional parameter. If not passed, the function will consider this length as 1 by default.

 

Return Value

This function returns an array that contains the pieces of the original string. If the length that is passed to the function surpasses the length of the initial string, the function will return the whole string as one element, whereas if the length integer is less than one, the function will return false.

Example

Input:

"Program"

Output:

Array

(

    [0] => P

    [1] => r

    [2] => o

    [3] => g

    [4] => r

    [5] => a

    [6] => m

)

Input:

"Programming Language"

Output:

Array

(

    [0] => Prog

    [1] => ram

    [2] => ming

    [3] => Lang

    [4] => uage

)

The following example illustrates the working of the str_split() function to convert string to array in PHP.

<?php

    // define a string

    $my_string = 'Sample String';   

    // without passing length

    // length = 1 (by default)

    $my_array1 = str_split($my_string);

    // print the array

    echo "The array of default length elements is: ";

    print_r($my_array1); // s, a, m, p, l, e, s, t, r, i, n, g

    print("<br><br>");   

    // passing length as second argument

    // length = 3

    $my_array2 = str_split($my_string, 3);

    // print the array

    echo "The array of length 3 elements is: ";

    print_r($my_array2); // sam, ple, str, ing 

?>

StringToArrayInPHP_1  

In the above example, it initializes a variable $my_string1 with a string “Sample String”. It uses the str_split() method to convert the string to an array. The following expression passes the string to this method without passing the length argument.

$my_array1 = str_split($my_string); 

By default, if you do not pass the length delimiter, it takes it as 1. So, it converts separate elements of the string into array elements. And the following expression passes 3 as the length delimiter, which converts the substring of length 3 into array elements.

$my_array2 = str_split($my_string, 3);

New Course: Full Stack Development for Beginners

Learn Git Command, Angular, NodeJS, Maven & MoreENROLL NOW
New Course: Full Stack Development for Beginners

 

  • explode("DELIMITER", STRING);

 

The explode() function is another method of PHP that is used to convert a string into an array. Unlike the str_split() function, this function uses a separator or delimiter that needs to be passed as an argument to the function. This separator could be a comma (,), a dot (.), or anything. After splitting the string into smaller substrings, this function stores them in an array and returns the array.

The syntax of the explode() function is

explode($separator, $initial_string, $no_of_elements)

Parameters

 

  • $separator: The separator is a character that commands the explode() function to split the string whenever it detects the separator and stores that substring in the array.
  • $initial_name: The second parameter that is passed to this function is the string that has to be converted into an array.
  • $no_of_elements (optional): This is the last and an optional parameter that is passed to this function. This parameter represents the number of strings in which it should split the original string. This number can be positive, negative, or zero.
  • Positive: If the passed integer is positive, then the array will store this many numbers of elements. If you separate the string into more than N number of pieces regarding the delimiter, the first N-1 elements remain the same, and the rest of the elements combine to form a single element.
  • Zero: If the passed integer is 0, then the array will contain the whole string as a single element.
  • Negative: If the passed integer is negative then the last N elements of the array will be cut off and it will return the remaining elements. 

 

Return Value

The explode() function returns an array that contains the string pieces as its elements.

Example

Input:

explode(“ “, “Hello, what is your name?")

Output:

Array

(

    [0] => Hello,

    [1] => What

    [2] => is

    [3] => your

    [4] => name?

)

Input:

explode(“ “, “Hello, what is your name?", 3)

Output:

Array

(

    [0] => Hello,

    [1] => What

    [2] => is your name?

)

Input:

explode(“ “, “Hello, what is your name?", -1)

Output:

Array

(

    [0] => Hello,

    [1] => What

    [2] => is 

    [2] => your 

)

The following example illustrates the working of the explode() function to convert string to array in PHP.

<?php

    // define a string

    $my_string = 'red, green, blue';    

    // passing "," as the delimiter

    $my_array1 = explode(",", $my_string);

    // print the array

    echo "The converted Sarray is: <br>";

    print_r($my_array1); // red, green, blue 

?>

PHP là một ngôn ngữ nguồn mở được sử dụng để phát triển và viết kịch bản phía máy chủ. Nó được biết đến rộng rãi và được sử dụng để phát triển phía máy chủ. Nó hoạt động hiệu quả với các cơ sở dữ liệu như MySQL , Oracle, Microsoft SOL Server, PostgreSQL và nhiều cơ sở dữ liệu phổ biến khác. Nó cũng hỗ trợ xử lý tập tin và mã hóa dữ liệu . 

Nó hỗ trợ nhiều loại dữ liệu nguyên thủy khác nhau trong PHP. 8 loại dữ liệu được cung cấp trong PHP được phân loại thành 3 loại cụ thể là loại được xác định trước hoặc loại vô hướng, loại hợp chất và loại đặc biệt. Bài viết này cung cấp một cái nhìn sâu sắc về việc chuyển đổi kiểu dữ liệu chuỗi thành mảng trong PHP và những lợi ích của việc đạt được điều này.

 

Chương trình Sau Đại học: Phát triển Web Full Stack

hợp tác với Caltech CTMEĐĂNG KÝ NGAY
Chương trình Sau Đại học: Phát triển Web Full Stack

 

Tại sao bạn cần chuyển đổi một chuỗi thành một mảng trong PHP?

Có nhiều trường hợp khi một mảng được coi là phù hợp hơn một chuỗi. Chẳng hạn, bạn có thể chuyển đổi mật khẩu được nhập dưới dạng đầu vào trong ứng dụng web thành một mảng trước khi lưu trữ chúng trong cơ sở dữ liệu . Điều này cung cấp bảo mật hơn và dễ dàng truy cập vào dữ liệu. Mảng có thể giúp bạn triển khai tổ chức dữ liệu tốt hơn và thao tác nhanh hơn. Khi bạn chuyển đổi một chuỗi thành một mảng, thao tác dữ liệu sẽ thuận tiện hơn. Là một ngôn ngữ kịch bản mạnh mẽ, PHP cung cấp nhiều phương thức dựng sẵn khác nhau để chuyển đổi một chuỗi thành một mảng. Bài viết này giải thích một số cách tiếp cận để đạt được nhiệm vụ này.

Sau đây là danh sách đầy đủ các phương thức có thể được sử dụng trong PHP để chuyển đổi một chuỗi thành một mảng.

  1. hàm str_split()
  2. separator("DELIMITER", STRING)
  3. hàm preg_split()
  4. hàm str_word_count()
  5. Lặp thủ công qua chuỗi
  6. Hàm json_decode()
  7. chức năng unserialize()

Các phương pháp khác nhau để chuyển đổi chuỗi thành mảng trong PHP

Có nhiều cách tiếp cận khác nhau, bao gồm các hàm dựng sẵn và cách tiếp cận thủ công được sử dụng để chuyển đổi chuỗi thành mảng trong PHP. 

  • hàm str_split()

Phương thức đầu tiên trong danh sách này là str_split(). Đây là một phương thức PHP dựng sẵn được sử dụng để chuyển đổi một chuỗi thành một mảng bằng cách chia chuỗi thành các chuỗi con nhỏ hơn có độ dài đồng đều và lưu trữ chúng trong một mảng. Nó không sử dụng bất kỳ loại dấu tách nào, nó chỉ tách chuỗi.

Cú pháp của hàm str_split() là:

str_split($initial_string, $splitter_length)

Thông số

  • $initial_string (bắt buộc): Tham số đầu tiên bạn truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.

 

  • $splitting_length (tùy chọn): Tham số thứ hai là một số nguyên biểu thị độ dài của các phần của chuỗi sau khi tách. Nó là một tham số tùy chọn. Nếu không được thông qua, hàm sẽ coi độ dài này là 1 theo mặc định.

 

Giá trị trả về

Hàm này trả về một mảng chứa các phần của chuỗi ban đầu. Nếu độ dài được truyền cho hàm vượt quá độ dài của chuỗi ban đầu, hàm sẽ trả về toàn bộ chuỗi dưới dạng một phần tử, ngược lại nếu độ dài nguyên nhỏ hơn một, hàm sẽ trả về false.

Ví dụ

Đầu vào:

"Chương trình"

Đầu ra:

Mảng

(

    [0] => P

    [1] => r

    [2] => o

    [3] => g

    [4] => r

    [5] => một

    [6] => m

)

Đầu vào:

"Ngôn ngữ lập trình"

Đầu ra:

Mảng

(

    [0] => Tiến trình

    [1] => ram

    [2] => minh

    [3] => Lãng

    [4] => thời gian

)

Ví dụ sau minh họa hoạt động của hàm str_split() để chuyển chuỗi thành mảng trong PHP.

<?php

    // định nghĩa một chuỗi

    $my_string = 'Chuỗi mẫu';   

    // không truyền chiều dài

    // độ dài = 1 (theo mặc định)

    $my_array1 = str_split($my_string);

    // in ra mảng

    echo "Mảng các phần tử có độ dài mặc định là: ";

    print_r($my_array1); // s, a, m, p, l, e, s, t, r, i, n, g

    in("<br><br>");   

    // chuyển độ dài làm đối số thứ hai

    // chiều dài = 3

    $my_array2 = str_split($my_string, 3);

    // in ra mảng

    echo "Mảng có độ dài 3 phần tử là: ";

    print_r($my_array2); // sam, ple, str, ing 

?>

StringToArrayInPHP_1  

Trong ví dụ trên, nó khởi tạo một biến $my_string1 với một chuỗi “Chuỗi mẫu”. Nó sử dụng phương thức str_split() để chuyển đổi chuỗi thành một mảng. Biểu thức sau chuyển chuỗi đến phương thức này mà không chuyển đối số độ dài.

$my_array1 = str_split($my_string); 

Theo mặc định, nếu bạn không chuyển dấu phân cách độ dài, nó sẽ lấy nó là 1. Vì vậy, nó chuyển đổi các phần tử riêng biệt của chuỗi thành các phần tử mảng. Và biểu thức sau chuyển 3 làm dấu phân cách độ dài, chuyển đổi chuỗi con có độ dài 3 thành các phần tử mảng.

$my_array2 = str_split($my_string, 3);

Khóa học mới: Phát triển Full Stack cho người mới bắt đầu

Tìm hiểu Lệnh Git, Góc, NodeJS, Maven và hơn thế nữaĐĂNG KÝ NGAY
Khóa học mới: Phát triển Full Stack cho người mới bắt đầu

 

  • separator ("DELIMITER", STRING);

 

Hàm separator () là một phương thức khác của PHP được sử dụng để chuyển đổi một chuỗi thành một mảng. Không giống như hàm str_split(), hàm này sử dụng dấu phân cách hoặc dấu phân cách cần được chuyển làm đối số cho hàm. Dấu phân cách này có thể là dấu phẩy (,), dấu chấm (.) hoặc bất kỳ thứ gì. Sau khi tách chuỗi thành các chuỗi con nhỏ hơn, hàm này lưu trữ chúng trong một mảng và trả về mảng đó.

Cú pháp của hàm separator() là

separator($separator, $initial_string, $no_of_elements)

Thông số

 

  • $separator: Dấu phân cách là một ký tự ra lệnh cho hàm separator() tách chuỗi bất cứ khi nào nó phát hiện dấu phân cách và lưu trữ chuỗi con đó trong mảng.
  • $initial_name: Tham số thứ hai được truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.
  • $no_of_elements (tùy chọn): Đây là tham số cuối cùng và là tham số tùy chọn được truyền cho hàm này. Tham số này biểu thị số lượng chuỗi mà nó sẽ tách chuỗi ban đầu. Con số này có thể là số dương, số âm hoặc số không.
  • Tích cực: Nếu số nguyên đã truyền là số dương, thì mảng sẽ lưu trữ nhiều phần tử này. Nếu bạn tách chuỗi thành nhiều hơn N số phần liên quan đến dấu phân cách, thì N-1 phần tử đầu tiên vẫn giữ nguyên và các phần tử còn lại kết hợp để tạo thành một phần tử duy nhất.
  • Zero: Nếu số nguyên đã truyền là 0, thì mảng sẽ chứa toàn bộ chuỗi dưới dạng một phần tử.
  • Âm: Nếu số nguyên truyền vào là số âm thì N phần tử cuối cùng của mảng sẽ bị cắt bỏ và nó sẽ trả về các phần tử còn lại. 

 

Giá trị trả về

Hàm separator () trả về một mảng chứa các phần chuỗi làm phần tử của nó.

Ví dụ

Đầu vào:

separator (“ “, “Xin chào, tên bạn là gì?”)

Đầu ra:

Mảng

(

    [0] => Xin chào,

    [1] => Cái gì

    [2] => là

    [3] => của bạn

    [4] => tên?

)

Đầu vào:

separator(“ “, “Xin chào, tên bạn là gì?”, 3)

Đầu ra:

Mảng

(

    [0] => Xin chào,

    [1] => Cái gì

    [2] => tên bạn phải không?

)

Đầu vào:

separator(“ “, “Xin chào, tên bạn là gì?", -1)

Đầu ra:

Mảng

(

    [0] => Xin chào,

    [1] => Cái gì

    [2] => là 

    [2] => của bạn 

)

Ví dụ sau minh họa hoạt động của hàm separator () để chuyển đổi chuỗi thành mảng trong PHP.

<?php

    // định nghĩa một chuỗi

    $my_string = 'đỏ, lục, lam';    

    // chuyển "," làm dấu phân cách

    $my_array1 = separator(",", $my_string);

    // in ra mảng

    echo "Sarray đã chuyển đổi là: <br>";

    print_r($my_array1); // đỏ lục lam 

?>

StringToArrayInPHP_2. 

Trong ví dụ trên, bạn đang chuyển đổi một chuỗi chứa ba màu được phân tách bằng dấu phẩy thành một mảng. Dấu phẩy “,” được chuyển đến hàm separator () dưới dạng dấu phân cách để chuyển đổi chuỗi thành các phần tử mảng.

Khóa học Full Stack Web Developer

Để trở thành chuyên gia về MEAN StackXEM KHÓA HỌC
Khóa học Full Stack Web Developer
  • hàm preg_split()

preg_split() cũng là một hàm PHP dựng sẵn được sử dụng để chuyển đổi một chuỗi thành một mảng bằng cách tách nó thành các chuỗi con nhỏ hơn. Giống như hàm separator(), nó cũng sử dụng dấu phân cách nhưng dấu phân cách trong hàm này là một mẫu biểu thức chính quy. Độ dài của chuỗi con phụ thuộc vào giá trị số nguyên được gọi là giới hạn được truyền cho hàm này.

Cú pháp của hàm preg_split() là:

preg_split($pattern, $string, $limit, $flags)

Thông số

  • $pattern: Mẫu là một biểu thức chính quy xác định ký tự nào được sử dụng làm dấu phân cách để tách chuỗi.
  • $string: Tham số thứ hai được truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.
  • $limit (tùy chọn): Giới hạn cho biết tổng số chuỗi con mà nó sẽ tách chuỗi. Nếu tất cả các dấu phân cách xuất hiện trước khi giới hạn kết thúc, các phần tử (giới hạn-1) vẫn giữ nguyên và các phần tử còn lại kết hợp để tạo thành phần tử cuối cùng. Nếu giới hạn là 0, thì nó sẽ trả về toàn bộ chuỗi dưới dạng một phần tử. Tuy nhiên, nó là một tham số tùy chọn. Nếu không được đề cập, nó sẽ coi giới hạn là -1 theo mặc định.
  • $flags (tùy chọn): Đây là tham số tùy chọn. Nếu được thông qua, nó được sử dụng để mang lại một số thay đổi cho mảng. Nói cách khác, cờ đại diện cho điều kiện mà mảng cuối cùng sẽ được trả về. Các tùy chọn hoặc điều kiện này là:
    • PREG_SPLIT_NO_EMPTY: Loại cờ này được sử dụng để xóa chuỗi rỗng và các chuỗi không trống sẽ được trả về.
    • PREG_SPLIT_DELIM_CAPTURE: Loại cờ này cũng được sử dụng để lấy dấu phân cách trong mảng kết quả. Nếu cờ này được sử dụng, thì biểu thức trong dấu ngoặc đơn cũng sẽ được ghi dưới dạng phần tử mảng.
    • PREG_SPLIT_OFFSET_CAPTURE: Loại cờ này làm cho hàm trả về một cặp dưới dạng phần tử mảng. Phần đầu tiên của cặp sẽ là chuỗi con và phần tiếp theo của cặp sẽ là chỉ mục của ký tự đầu tiên của chuỗi con trong chuỗi ban đầu.

Giá trị trả về

Hàm preg_split() trả về một mảng chứa các chuỗi con làm phần tử của nó, được phân tách bằng mẫu được truyền cho hàm.

Ví dụ sau minh họa hoạt động của hàm preg_split() để chuyển chuỗi thành mảng trong PHP.

<?php

 // define a string

    $my_string = 'hello';    

    // -1 -> no limit

    $my_array = preg_split('//', $my_string , -1, PREG_SPLIT_NO_EMPTY); 

    // print the array

    echo "The converted array is: <br>";

    print_r($my_array); // h, e, l, l, o

?>

  • str_word_count() Function

Hàm str_word_count() là một hàm dựng sẵn khác. Nó không được sử dụng để tách chuỗi, nhưng nó cung cấp thông tin về chuỗi, chẳng hạn như số lượng ký tự trong chuỗi, v.v. 

Cú pháp của hàm str_word_count() là:

str_word_count ($string , $returnVal , $chars )

Thông số

  • $string: Tham số đầu tiên được truyền cho hàm này là chuỗi phải được chuyển đổi thành một mảng.
  • $returnVal (tùy chọn): Tham số này cho biết hàm sẽ trả về kết quả gì. Đây là một tham số tùy chọn và theo mặc định, nó là 0. Nó có thể nhận ba loại giá trị khác nhau:
      • 0: Nó cũng là giá trị theo mặc định. Nếu tham số returnVal được đặt thành 0, thì hàm sẽ trả về tổng số từ trong chuỗi đầu vào.
      • 1: Nếu tham số returnVal được đặt thành 1, thì hàm sẽ trả về một mảng chứa tất cả các từ của chuỗi dưới dạng các phần tử của nó.
  • 2: Nếu bạn đặt tham số returnVal là 2 thì hàm sẽ trả về một mảng chứa các cặp khóa-giá trị. Khóa sẽ là chỉ mục của từ và giá trị sẽ chứa chính từ đó.
  • $chars (tùy chọn): Đây lại là một tham số tùy chọn cho biết chuỗi cũng xem xét ký tự được truyền dưới dạng tham số thành một từ. 

Giá trị trả về

Giá trị trả về của hàm phụ thuộc vào các tham số được thảo luận ở trên.

Ví dụ sau minh họa hoạt động của hàm str_word_count() để chuyển đổi chuỗi thành mảng trong PHP.

<?php

    // define a string

    $my_string = 'he2llo world';   

    // the character '2' will not be considered as word 

    $my_array1 = str_word_count($my_string, 1);

    // print the array

    echo "The converted array is: <br>";

    print_r($my_array1); // he, llo, world

    // the character '2' is passed as the third argument 

    $my_array2 = str_word_count($my_string, 1, 2); 

    // print the array

    echo "<br><br>The converted array is: <br>";

    print_r($my_array2); // he2llo, world 

?>

  • Lặp thủ công qua chuỗi

Phương pháp tiếp theo trong danh sách này mà bạn có thể chuyển đổi một chuỗi thành một mảng là lặp thủ công qua chuỗi. Bạn sẽ khởi tạo một biến, giả sử “i” là 0, và bắt đầu một vòng lặp từ “i” cho đến khi “i” nhỏ hơn độ dài của chuỗi. Bên trong vòng lặp, bạn sẽ lưu trữ từng từ của chuỗi trong mảng và tăng biến “i”.

Ví dụ sau minh họa cách tiếp cận thủ công sử dụng vòng lặp for để chuyển đổi chuỗi thành mảng trong PHP.

<?php

    // define a string

    $my_string = 'hello world';    

    // declare an empty array

    $my_array = [];

    // traverse the string

    for ($i = 0; $i < strlen($my_string); $i++) {

      if ($my_string[$i] != " ") { 

        $my_array[] = $my_string[$i]; 

      }        

    } 

    // print the array

    echo "The converted array is: <br>";

    print_r($my_array); // h, e, l, l, o, w, o, r, l, d 

?>