你知道为什么这个php数组赢了吗';我不能正常工作

你知道为什么这个php数组赢了吗';我不能正常工作,php,arrays,telegram-bot,Php,Arrays,Telegram Bot,我正在使用telegram bot api为我的业务目的制作一个bot,在我的项目中,我需要将bot发送的数据存储到一个文件中,然后使用这些数据,我的问题是我无法查询bot提供的数组 下面是我的数组,例如,假设我想访问消息\u id 在访问消息\u id的脚本中,我编写了以下代码: $my_array = file_get_content('log'); echo $my_array['result']['message_id'] 但这行不通 Array ( [ok] => 1

我正在使用telegram bot api为我的业务目的制作一个bot,在我的项目中,我需要将bot发送的数据存储到一个文件中,然后使用这些数据,我的问题是我无法查询bot提供的数组 下面是我的数组,例如,假设我想访问消息\u id

在访问消息\u id的脚本中,我编写了以下代码:

$my_array = file_get_content('log');
echo $my_array['result']['message_id']
但这行不通

Array
(
    [ok] => 1
    [result] => Array
        (
            [message_id] => 599
            [from] => Array
                (
                    [id] => 224181375
                    [first_name] => boofeh
                    [username] => boofehbot
                )

            [chat] => Array
                (
                    [id] => 50408323
                    [first_name] => MOƎIN
                    [username] => imoein1
                    [type] => private
                )

            [date] => 1466751591
            [text] => اکنون سفارش خود را ارسال کنید
        )

)
是否在将数组写入文件之前读取它?
并且在从文件读取数组之后读取它

下面是如何像这样序列化和取消序列化数组

$serialized_string = serialize($array);
这就是数组序列化的方式

要使其非序列化

$serialized_string = file_get_contents('log');
$array = unserialize($serialized_string);
print_r($array);
现在您可以访问数组中的数据,如

echo$my_数组['result']['message_id']

serialize()生成值的可存储表示形式

unserialize()接受单个序列化变量并将其转换回PHP值



检查
echo';打印(我的数组)它将输出一些不同的数组,以确定您向我们显示了什么。您可以使用
var\u dump($my\u数组)
also
echo$my_数组['result']['message_id']
here
未命中。可能是打字错误。如果没有,则添加它,并在人们没有响应时选中它。是吗?是的,没错!