Hướng dẫn php serialize array to file - php tuần tự hóa mảng thành tệp

Tôi có một mảng trông giống như sau khi sử dụng

$string_data = serialize($array);
file_put_contents("your-file.txt", $string_data);
0

Array ( [0] => Array ( [0] => piklu [name] => piklu ) [1] => Array ( [0] => arindam [name] => arindam ) [2] => Array ( [0] => shyamal [name] => shyamal ) [3] => Array ( [0] => arko [name] => arko ) [4] => Array ( [0] => pamela [name] => pamela ) [5] => Array ( [0] => dodo [name] => dodo ) [6] => Array ( [0] => tanmoy [name] => tanmoy ) [7] => Array ( [0] => jitu [name] => jitu ) [8] => Array ( [0] => ajgar [name] => ajgar ) ) 

Bây giờ tôi muốn viết mảng này trực tiếp vào một tệp, tôi sử dụng phương thức

$string_data = serialize($array);
file_put_contents("your-file.txt", $string_data);
1, nhưng tôi không biết cách lấy dữ liệu từ tệp chính xác như thế nào chúng trông giống như bản gốc. Bất kỳ ý tưởng để giải quyết điều này?

Hướng dẫn php serialize array to file - php tuần tự hóa mảng thành tệp

Elzo Valugi

26.5K14 Huy hiệu vàng92 Huy hiệu bạc114 Huy hiệu đồng14 gold badges92 silver badges114 bronze badges

Đã hỏi ngày 14 tháng 2 năm 2013 lúc 6:37Feb 14, 2013 at 6:37

Hướng dẫn php serialize array to file - php tuần tự hóa mảng thành tệp

2

Vấn đề của bạn tại thời điểm này về cơ bản là bạn chỉ có thể viết chuỗi vào một tệp. Vì vậy, để sử dụng

$string_data = serialize($array);
file_put_contents("your-file.txt", $string_data);
1, trước tiên bạn cần chuyển đổi dữ liệu của mình thành một chuỗi.

Đối với trường hợp sử dụng cụ thể này, có một hàm gọi là serialize chuyển đổi bất kỳ loại dữ liệu PHP nào thành một chuỗi (ngoại trừ tài nguyên).

Đây là một ví dụ làm thế nào để sử dụng điều này.

$string_data = serialize($array);
file_put_contents("your-file.txt", $string_data);

Bạn cũng có thể muốn trích xuất dữ liệu của bạn sau này. Chỉ cần sử dụng unserialize để chuyển đổi dữ liệu chuỗi từ tệp trở lại một mảng.

Đây là cách bạn làm điều đó:

$string_data = file_get_contents("your-file.txt");
$array = unserialize($string_data);

Đã trả lời ngày 14 tháng 2 năm 2013 lúc 6:41Feb 14, 2013 at 6:41

MarcdefiantMarcdefiantMarcDefiant

6.4815 huy hiệu vàng27 Huy hiệu bạc47 Huy hiệu đồng5 gold badges27 silver badges47 bronze badges

1

Đây là hai cách:

(1) Viết biểu diễn JSON của đối tượng mảng vào tệp.

$arr = array( [...] );
file_put_contents( 'data.txt', json_encode( $arr ) );

Sau đó ...

$data = file_get_contents( 'data.txt' );
$arr = json_decode( $data, true );

(2) Viết một biểu diễn tuần tự hóa của đối tượng mảng vào tệp.

$arr = array( [...] );
file_put_contents( 'data.txt', serialize( $arr ) );

Sau đó ...

$data = file_get_contents( 'data.txt' );
$arr = unserialize( $data );

(2) Viết một biểu diễn tuần tự hóa của đối tượng mảng vào tệp.

Đã trả lời ngày 14 tháng 2 năm 2013 lúc 6:41Feb 14, 2013 at 6:41

MarcdefiantMarcdefiantPatrick Moore

6.4815 huy hiệu vàng27 Huy hiệu bạc47 Huy hiệu đồng5 gold badges37 silver badges62 bronze badges

1

Đây là hai cách: writes a string to a file, not an array. http://php.net/manual/en/function.file-put-contents.php

(1) Viết biểu diễn JSON của đối tượng mảng vào tệp.

ob_start();
print_r($myarray);
$output = ob_get_clean();
file_put_contents("myfile.txt",$output);

Sau đó ...Feb 14, 2013 at 6:42

Hướng dẫn php serialize array to file - php tuần tự hóa mảng thành tệp

4

(2) Viết một biểu diễn tuần tự hóa của đối tượng mảng vào tệp.

$filePath = 'path/to/file.php';

//Saving
file_put_contents($filePath, '

Tôi thích phương pháp JSON, vì nó không tham nhũng dễ dàng như nối tiếp. Bạn có thể mở tệp dữ liệu và chỉnh sửa các nội dung và nó sẽ mã hóa/giải mã trở lại mà không cần đau đầu lớn. Dữ liệu tuần tự hóa không thể được thay đổi dễ dàng hoặc bị hỏng, hoặc unserialize () sẽ không hoạt động. Mỗi biến được xác định theo loại và độ dài và các giá trị này phải được cập nhật cùng với thay đổi thực tế bạn đang thực hiện.

Patrick Moorepatrick MooreMar 9, 2021 at 17:23

Huy hiệu vàng 13K537 Huy hiệu bạc62 Huy hiệu đồngPelmered

file_put_contents ghi một chuỗi vào một tệp, không phải là một mảng. http://php.net/manual/en/function.file-put-contents.php21 silver badges21 bronze badges

Nếu bạn muốn viết những gì bạn thấy ở đó trong bản in đó vào một tệp, bạn có thể thử điều này:

file_put_contents('test.txt', serialize($array));

Đã trả lời ngày 14 tháng 2 năm 2013 lúc 6:41Feb 14, 2013 at 6:41

Hướng dẫn php serialize array to file - php tuần tự hóa mảng thành tệp

MarcdefiantMarcdefiantDevang Rathod

6.4815 huy hiệu vàng27 Huy hiệu bạc47 Huy hiệu đồng2 gold badges22 silver badges31 bronze badges

Làm thế nào tôi có thể tuần tự hóa dữ liệu trong PHP?

Để có được các giá trị bài từ serializearray trong PHP, hãy sử dụng phương thức serializeArray ().Phương thức serializearray () tuần tự hóa tất cả các dạng và các yếu tố hình thức như.Phương thức serialize () nhưng trả về cấu trúc dữ liệu JSON để bạn làm việc.use the serializeArray() method. The serializeArray( ) method serializes all forms and form elements like the . serialize() method but returns a JSON data structure for you to work with.

Mảng serialize trong PHP là gì?

Hàm serialize () chuyển đổi một biểu diễn có thể lưu trữ của một giá trị.Để tuần tự hóa dữ liệu có nghĩa là để chuyển đổi giá trị thành một chuỗi các bit, để nó có thể được lưu trữ trong một tệp, bộ đệm bộ nhớ hoặc được truyền qua một mạng.converts a storable representation of a value. To serialize data means to convert a value to a sequence of bits, so that it can be stored in a file, a memory buffer, or transmitted across a network.

Làm thế nào kiểm tra dữ liệu được nối tiếp hoặc không trong PHP?

is_serialized (chuỗi $ data, bool $ nghiêm ngặt = true): bool kiểm tra giá trị để tìm nếu nó được tuần tự hóa.: bool Checks value to find if it was serialized.

Sê -ri hóa giải thích với ví dụ trong PHP là gì?

Xét nghiệm một đối tượng có nghĩa là chuyển đổi nó thành biểu diễn byteStream có thể được lưu trữ trong một tệp.Điều này rất hữu ích cho dữ liệu liên tục;Ví dụ: Phiên PHP tự động lưu và khôi phục các đối tượng.converting it to a bytestream representation that can be stored in a file. This is useful for persistent data; for example, PHP sessions automatically save and restore objects.