Php chuyển đổi 1 thành một

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 thế của việc đạt được điều này

Chương trình sau đại học. Phát triển web đầy đủ ngăn xếp

hợp tác với Caltech CTME Đăng ký ngay

Php chuyển đổi 1 thành một

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, nó giúp thao tác dữ liệu thuận tiệ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. phát nổ("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 chuyển đến 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 pass thì mặc định hàm sẽ coi độ dài này là 1

Giá trị trả về

Hàm này trả về một mảng chứa các phần của chuỗi gốc. 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

Thí 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] => cách dùng

)

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

// đị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);

    print("

");   

// 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);

?>

Php chuyển đổi 1 thành một
  

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 chuỗi thành mảng. Biểu thức sau chuyển chuỗi tới 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 vượt qua dấu phân cách độ dài, thì nó sẽ 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 Git Command, Angular, NodeJS, Maven và hơn thế nữa Đăng ký ngay

Php chuyển đổi 1 thành một

  • phát nổ ("DELIMITER", STRING);

Hàm phát nổ () 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 cứ 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 phát nổ() là

phát nổ($separator, $initial_string, $no_of_elements)

Thông số

  • dấu phân cách $. Dấu phân cách là một ký tự ra lệnh cho hàm phát nổ () 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 (không bắt buộc). Đâ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 đại diện cho số lượng chuỗi mà nó sẽ tách chuỗi gốc. 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 được truyền vào là số dương thì mảng sẽ lưu trữ nhiều phần tử như vậ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
  • Số không. 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ử
  • Phủ định. 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 và trả về các phần tử còn lại.  

Giá trị trả về

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

Thí dụ

Đầu vào

phát nổ (“ “, “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

phát nổ(“ “, “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

phát nổ(“ “, “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 phát nổ () để chuyển đổi chuỗi thành mảng trong 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 = phát nổ(",", $my_string);

// in ra mảng

    echo "The converted Sarray is:
";

print_r($my_array1);

?>

Php chuyển đổi 1 thành một
 

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 phát nổ() 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 Stack Xem khóa học

Php chuyển đổi 1 thành một

  • 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 chia nó thành các chuỗi con nhỏ hơn. Cũng giống như hàm phát nổ(), 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ố

  • mẫu $. 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 tách để phân tách chuỗi
  • $chuỗi. 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
  • $giới hạn (tùy chọn). Giới hạn cho biết tổng số chuỗi con mà nó sẽ chia 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à một 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 dưới dạng các 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

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

$my_string = 'xin chào';

// -1 -> không giới hạn

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

// in ra mảng

    echo "The converted array is:
";

print_r($my_array);

?>

Php chuyển đổi 1 thành một

Trong ví dụ được mô tả ở trên, nó chuyển đổi chuỗi “xin chào” thành một mảng. Nó vượt qua '-1' làm đối số giới hạn, vì vậy không có giới hạn. “//” được truyền dưới dạng mẫu để chuyển đổi các ký tự riêng biệt của chuỗi thành các phần tử mảng.  

khóa học miễn phí. Nguyên tắc cơ bản về lập trình

Tìm hiểu kiến ​​thức cơ bản về lập trình Đăng ký ngay

Php chuyển đổi 1 thành một

  • hàm str_word_count()

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ố

  • $chuỗi. 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ề cái 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 nếu 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 yêu cầu 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 chuỗi thành mảng trong PHP

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

$my_string = 'thế giới he2llo';

// ký tự '2' sẽ không được coi là từ

$my_array1 = str_word_count($my_string, 1);

// in ra mảng

    echo "The converted array is:
";

print_r($my_array1);

// ký tự '2' được chuyển thành đối số thứ ba

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

// in ra mảng

    echo "

The converted array is:
";

print_r($my_array2);

?>

Php chuyển đổi 1 thành một

Trong ví dụ trên, chuỗi “he2llo world” chứa một ký tự '2' không được coi là một từ theo mặc định bởi hàm str_word_count(). Vì vậy, biểu thức sau chuyển đổi chuỗi thành một mảng và '2' bị bỏ qua

$my_array1 = str_word_count($my_string, 1);

Khi bạn chuyển ký tự '2' làm đối số thứ ba cho hàm str_count_world(), thì ký tự đó được coi là một từ và được đưa vào mảng

  • 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 từng từ của chuỗi vào 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

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

$my_string = 'xin chào thế giới';

// khai báo mảng rỗng

$my_array = [];

// duyệt qua chuỗi

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

nếu ($my_string[$i]. = "") {

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

}

}

// in ra mảng

    echo "The converted array is:
";

print_r($my_array);

?>

Php chuyển đổi 1 thành một
 

Trong ví dụ trên, một mảng trống được khởi tạo. Chuỗi “hello world” được duyệt bằng vòng lặp for và mỗi ký tự của chuỗi được chèn vào mảng

Khóa học Lập trình viên Java Full Stack

Hợp tác với HIRIST và HackerEarth KHÓA HỌC KHÁM PHÁ

Php chuyển đổi 1 thành một

  • Hàm json_decode()

Hàm json_decode() được sử dụng để giải mã chuỗi được mã hóa JSON. JSON là viết tắt của Ký hiệu đối tượng JavaScript. JSON là định dạng chuẩn để trao đổi hoặc truyền dữ liệu và được cung cấp bởi JavaScript. Chuỗi JSON thường đại diện cho các đối tượng thành các cặp giá trị dữ liệu

Cú pháp của hàm json)decode() là.   

json_decode( $json, $assoc = FALSE, $depth = 512, $options = 0 )

Thông số

  • $json. Tham số này đại diện cho chuỗi JSON phải được mã hóa thành một mảng
  • $assoc. Tham số này thuộc kiểu dữ liệu boolean. Nếu đúng thì hàm sẽ chuyển đổi chuỗi được mã hóa thành một mảng
  • độ sâu $. Nó đại diện cho độ sâu của đệ quy sẽ được sử dụng để giải mã chuỗi
  • tùy chọn $ (tùy chọn). Nó bao gồm các mặt nạ bit của JSON_OBJECT_AS_ARRAY, JSON_BIGINT_AS_STRING,, JSON_THROW_ON_ERROR

Giá trị trả về

Hàm này trả về chuỗi JSON đã giải mã. Nếu độ sâu của chuỗi được mã hóa sâu hơn giới hạn độ sâu đã chỉ định của đệ quy, hàm này sẽ chỉ trả về NULL

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

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

$my_string = '{"h". 2, "e". 5, "l". 4, "l". 8, "ô". 10}';

// chuyển thành mảng

$my_array = json_decode($my_string);

// in ra mảng

    echo "The converted array is:
";

var_dump($my_array);

?>

Php chuyển đổi 1 thành một

Trong ví dụ trên, chuỗi “hello” được khởi tạo ở định dạng JSON. Hàm json_decode() chấp nhận chuỗi này làm đối số, giải mã và chuyển đổi nó thành một mảng

  • chức năng unserialize()

Hàm unserialize() là một hàm PHP dựng sẵn khác. Nó hoàn toàn ngược lại với hàm serialize() trong PHP. Hàm này chuyển đổi một chuỗi tuần tự hóa được truyền dưới dạng tham số, trở lại dạng ban đầu của nó. e. , một mảng

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

hủy xác thực( $serialized_array, $options )

Thông số

  • $chuỗi. Tham số này là chuỗi được tuần tự hóa cần được hủy đăng ký
  • tùy chọn $ (tùy chọn). Đây là một tham số tùy chọn đại diện cho các tùy chọn có thể được cung cấp cho chức năng này

Giá trị trả về

Giá trị trả về có thể là boolean, string, integer, float hoặc bất cứ thứ gì

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

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

$my_string = 'a. 3. {tôi. 0;s. 1. "a"; tôi. 1;s. 6. "mẫu"; tôi. 2;s. 6. "sợi dây";}';

// chuyển thành mảng

$my_array = unserialize($my_string);

// in ra mảng

    echo "The converted array is:
";

print_r($my_array);

?>

Php chuyển đổi 1 thành một
  

Trong ví dụ trên, một chuỗi tuần tự hóa “một chuỗi mẫu” được khởi tạo. Hàm unserialize() chấp nhận chuỗi này làm đối số và hủy chuỗi này và chuyển đổi nó trở lại mảng ban đầu

Tiếp cận hơn 150 giờ đào tạo do người hướng dẫn, hơn 20 công cụ và kỹ năng theo yêu cầu, 10 dự án kết thúc bài học và 4 dự án kết thúc giai đoạn, v.v. Tìm hiểu cách xây dựng một ứng dụng end-to-end với các tính năng thú vị trong Full Stack Web Developer - Chương trình MEAN Stack của chúng tôi. Giữ chỗ của bạn NGAY HÔM NAY

Suy nghĩ cuối cùng

Tóm lại, trong bài viết này, bạn đã học bảy phương pháp khác nhau để chuyển đổi một chuỗi thành một mảng từ trong PHP. Bạn đã bắt đầu với một cái nhìn tổng quan ngắn gọn về PHP và hiểu lý do tại sao đôi khi tốt hơn là chuyển đổi một chuỗi thành một mảng. Bạn đã học 7 phương thức khác nhau để chuyển đổi chuỗi thành một mảng cùng với mô tả, cú pháp, kiểu trả về, mã và đầu ra của chúng

Nếu bạn muốn tìm hiểu thêm về các khái niệm PHP quan trọng như vậy cho người mới bắt đầu, bạn nên xem Khóa đào tạo PHP của Simplilearn. Khóa học này được các chuyên gia trong ngành biên soạn đặc biệt dành cho người mới bắt đầu và sẽ hướng dẫn bạn một số khái niệm cơ bản về PHP. Khi kết thúc khóa học này, bạn sẽ tìm hiểu các kiến ​​thức cơ bản về PHP, phát triển PHP nâng cao, cách xây dựng CMS bằng PHP, tạo trang web tải lên hình ảnh, tìm hiểu PHP MVC với MySQL, lập trình hướng đối tượng và các đối tượng dữ liệu trong PHP, và

Đã là một chuyên gia PHP? . Hãy xem khóa học này về Phát triển PHP nâng cao để nâng cao kỹ năng và tìm hiểu các khái niệm như cookie, phiên, v.v. Nếu bạn muốn theo đuổi sự nghiệp phát triển ngăn xếp MEAN (Mongo, Express, Angular, Node), bạn nên xem khóa học của chúng tôi về Khóa học phát triển ngăn xếp MEAN hoàn chỉnh. Dưới đây là danh sách các khóa học trực tuyến hoàn toàn miễn phí mà bạn nên xem trên Simplilearn.  

Nếu bạn có bất kỳ câu hỏi nào liên quan đến bài viết này về “Chuỗi thành mảng trong PHP” hoặc bất kỳ đề xuất nào, vui lòng để lại nhận xét trong hộp nhận xét và các chuyên gia của chúng tôi sẽ liên hệ lại với bạn sớm nhất có thể

học tập vui vẻ

Thông tin về các Tác giả

Php chuyển đổi 1 thành một
Ravikiran AS

Ravikiran A S làm việc với Simplilearn với tư cách là Nhà phân tích nghiên cứu. Anh ấy là một người đam mê nhiệt tình, luôn săn lùng những công nghệ mới nhất. Anh ấy thành thạo Ngôn ngữ lập trình Java, Dữ liệu lớn và các Khung dữ liệu lớn mạnh mẽ như Apache Hadoop và Apache Spark