gpt4 book ai didi

php - 在 PHP 中读写数组?

转载 作者:可可西里 更新时间:2023-10-31 23:19:15 24 4
gpt4 key购买 nike

我目前正在尝试使用 PHP 来跟踪我网站页面上的“赞”数。我想做的是将所有信息放入一个数组中,而不是每个页面都有一个单独的文件,每个文件都包含一个整数。我试图做的是设置一些包含此数组的文件(称之为 data.txt)。

$array = array(
"Page1" => 10,
"Page2" => 3,
);

例如,上面的页面 1 有 10 个赞,页面 2 有 3 个。这里是问题的实质:如何将上述数组写入文本文件,然后再从中读取?我尝试过的大多数方法都以简单地读出一个字符串而告终,这不是我正在寻找的字符串(我希望能够轻松地直接访问一个数组的点赞数)。

对于任何感兴趣的人来说,这是 var_dump:

array(2) { ["Page1"]=> int(10) ["Page2"]=> int(3) }

也许有某种方法可以将其解析回数组?

最佳答案

正如 Mark Ba​​ker 所建议的,您需要序列化数据以便将其保存到文件中。稍后您可以读取它并将其反序列化回数组。方法如下:

<?php

// DISPLAY ARRAY BEFORE SAVING IT.
$old_array = array( "Page1" => 10,
"Page2" => 3,
);
echo "OLD ARRAY" .
"<br/><br/>";
print_r( $old_array );

// WRITE ARRAY TO FILE.
$old_data = serialize( $old_array );
file_put_contents( "my_file.txt",$old_data );

// READ ARRAY FROM FILE.
$new_data = file_get_contents( "my_file.txt" );
$new_array = unserialize( $new_data );

// DISPLAY ARRAY TO CHECK IF IT'S OK.
echo "<br/><br/>" .
"NEW ARRAY" .
"<br/><br/>";
print_r( $new_array );

?>

这是你应该在屏幕上看到的:

OLD ARRAY

Array ( [Page1] => 10 [Page2] => 3 )

NEW ARRAY

Array ( [Page1] => 10 [Page2] => 3 )

而且,如果您打开“my_file.txt”,您将看到:

a:2:{s:5:"Page1";i:10;s:5:"Page2";i:3;}

关于php - 在 PHP 中读写数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30900073/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com