PHP 序列化数组函数用于序列化给定数组并转换值的可存储表示形式。序列化数组函数是 PHP 中的内置函数。数据串行化意味着将值转换为位序列,以存储在内存缓冲区、文件中或通过网络传输。数组是复杂的数据类型;我们无法直接看到它的内容。 Serialize() 函数将数组转换为简单的字符串,我们可以将其保存在文件中并通过 URL 等方式通过网络传输。
开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
序列化数组函数的语法 –
序列化(数组);
参数 –
PHP serialize() 数组函数接受一个参数(数组/值),这是必需参数。假设我们有一个数组(1,2,3,4),我们想将其存储在文件中,所以首先我们需要通过调用函数serialize(array)来序列化它,该函数序列化数组并返回字符串转换数组为“a:4:{i:0;i:1;i:1;i:2;i:2;i:3;i:3;i:4;}”,我们可以将其存储在更远的地方文件或通过网络发送。
以下是下面提到的示例
序列化复杂数组的serialize()数组函数示例 –
接下来,我们通过以下示例编写 PHP 代码来更清楚地理解 serialize() 数组函数,其中,serialize() 函数用于序列化给定的数组,如下 –
代码:
<?php // create complex array $array = array( 'text', 200, 400, 'apple', array( 2, 'two', 3, 'three' ) ); // printing complex array print("The complex array is : "); print_r( $array ); print( "<br>"); // serialize the complex array $array_string = serialize( $array ); // printing the serialize array print( "The serialize array is : " ); print( $array_string ); print( "<br>"); // unserializing the serialized array $unser_array = unserialize( $array_string ); // printing the unserialized array print_r( $unser_array ); ?>
输出:
如上面的代码所示,使用serialize()函数创建并序列化复杂数组,该函数返回数组的字节流或字符串转换。此外,使用 unserialize() 函数将序列化数组转换回数组,这与原始数组相同,如上面的输出所示。
serialize() 数组函数序列化数组并将其存储到文件中的示例 –
接下来,我们通过下面的示例编写 PHP 代码来更清楚地理解序列化()数组函数,其中序列化()函数用于序列化给定的数组并将其永久存储到文本文件中,如下所示 -
代码:
<?php // create an array $array = array( 'apple', 'banana', 'mango', 'orange', 'cherry' ); // printing complex array print("The array is : "); print_r( $array ); print( "<br>"); // serialize the complex array $array_string = serialize( $array ); // printing the serialize array print( "The serialize array is : " ); print( $array_string ); print( "<br>"); // save the array string to a Ex text file file_put_contents('Ex.txt', $array_string); // access back the data from the save text file. $file_array = file_get_contents('Ex.txt'); // printing the file array print( "The serialize file array is : " ); print( $file_array ); print( "<br>"); // unserializing the serialized array $unser_array = unserialize( $file_array ); // printing the unserialized array print( "The unserialize file array is : " ); print_r( $unser_array ); print( "<br>"); ?>
输出:
如果我们检查 Ex.txt 文件,内容是 –
如上面的代码,复杂数组被创建并序列化;序列化数组永久存储在文本文件中。此外,使用 unserialize() 函数将存储的序列化数组读回并转换为数组,这与原始数组相同,如上面的输出所示。
serialize() 数组函数序列化数组和编码的示例 –
接下来,我们编写PHP代码来理解serialize()数组函数,其中serialize()函数用于序列化给定的数组并将其编码为URL以跨多个页面发送,如下 –
代码:
<?php // create an array $array = array ( 1 => "one", 2 => "two", 3 => "three" ); // printing an array print("The array is : "); print_r( $array ); print( "<br>"); // serialize the complex array $array_string = serialize( $array ); // printing the serialize array print( "The serialize array is : " ); print( $array_string ); print( "<br>"); // encode the array string $enc_array = urlencode( $array_string ); print( "The encode serialize array is : " ); print( $enc_array ); print( "<br>"); // deencode the encoded array string $dec_array = urldecode( $enc_array ); // printing the file array print( "The deencode serialized array is : " ); print( $dec_array ); print( "<br>"); ?>
输出:
如上面的代码,复杂数组被创建并序列化;使用 urlencode() 函数对序列化数组进行编码。进一步,使用 urldecode() 函数将编码后的序列化数组解码为数组,这与原始数组相同,如上面的输出所示。
PHP Zip 文件用于以压缩形式存储一堆文件或目录,稍后也可以解压缩。
以上是PHP序列化数组的详细内容。更多信息请关注PHP中文网其他相关文章!