繁体   English   中英

创建数组时PHP非法偏移类型

[英]PHP Illegal Offset Type when creating array

我试图在PHP中以数组的形式制作一些虚假数据,并在运行此行时不断收到Illegal Offset Type错误,有人可以帮助解释为什么吗?

我查找了非法偏移量错误的原因,似乎我没有通过偏移量访问任何数据,我试图创建一个数组,也没有看到在哪里使用对象作为对象的关联。数组。

$fake_data = array(
                    ["game_id"] => "1",
                    ["turn_number"] => "1",
                    ["host_user"] => array(
                                            ["units"] => array(
                                                                array("row"=> "1", "col" => "1", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "AssaultAlpha"),
                                                                array("row"=> "1", "col" => "2", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "JuggernautAlpha"),
                                                                array("row"=> "1", "col" => "3", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "MedicAlpha")

                                                              ),
                                            ["hit_indicators"] => array(
                                                                        array("row"=> "1", "col" => "3", "direction" => "1"),
                                                                        array("row"=> "1", "col" => "2", "direction" => "1")
                                                                )
                                          ),
                    ["client_user"] => array(
                                            ["units"] => array(
                                                                array("row"=> "5", "col" => "1", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "AssaultAlpha"),
                                                                array("row"=> "6", "col" => "2", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "JuggernautAlpha"),
                                                                array("row"=> "7", "col" => "3", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "MedicAlpha")

                                                              ),
                                            ["hit_indicators"] => array(
                                                                        array("row"=> "5", "col" => "3", "direction" => "1"),
                                                                        array("row"=> "6", "col" => "2", "direction" => "1")
                                                                )
                                          )
                    );

您必须删除'['和']'。 这是正确的代码

<?php
$fake_data = array(
                    "game_id" => "1",
                    "turn_number" => "1",
                    "host_user" => array(
                                            "units" => array(
                                                                array("row"=> "1", "col" => "1", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "AssaultAlpha"),
                                                                array("row"=> "1", "col" => "2", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "JuggernautAlpha"),
                                                                array("row"=> "1", "col" => "3", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "MedicAlpha")

                                                              ),
                                            "hit_indicators" => array(
                                                                        array("row"=> "1", "col" => "3", "direction" => "1"),
                                                                        array("row"=> "1", "col" => "2", "direction" => "1")
                                                                )
                                          ),
                    "client_user" => array(
                                            "units" => array(
                                                                array("row"=> "5", "col" => "1", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "AssaultAlpha"),
                                                                array("row"=> "6", "col" => "2", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "JuggernautAlpha"),
                                                                array("row"=> "7", "col" => "3", "hp" => "100", "armor" => "100", "is_dead" => "0", "direction_facing" => "1", "name" => "MedicAlpha")

                                                              ),
                                            "hit_indicators" => array(
                                                                        array("row"=> "5", "col" => "3", "direction" => "1"),
                                                                        array("row"=> "6", "col" => "2", "direction" => "1")
                                                                )
                                          )
                    );
?>
<pre><?php print_r($fake_data); ?></pre>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM