Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在JSONArray中循环,但一无所获_Php - Fatal编程技术网

Php 在JSONArray中循环,但一无所获

Php 在JSONArray中循环,但一无所获,php,Php,首先,我是PHP的新手,请原谅我 我想获取一个JSON响应并将其拆分。这将来自一个$\u POST变量,但是我试图测试硬编码变量中的响应。问题是我甚至不能把它打印出来,以确保我能正确地开始这项工作 $json = '({ "array": [ "Store #: 00608", "Phone #: null", "Address: 3014 N. SCOTTSDALE RD.", "City: SCOTTSDALE", "Zip: 85251",

首先,我是
PHP的新手,请原谅我

我想获取一个
JSON
响应并将其拆分。这将来自一个
$\u POST
变量,但是我试图测试硬编码变量中的响应。问题是我甚至不能把它打印出来,以确保我能正确地开始这项工作

$json = 
'({
  "array":
  [
    "Store #: 00608",
    "Phone #: null",
    "Address: 3014 N. SCOTTSDALE RD.",
    "City: SCOTTSDALE",
    "Zip: 85251",
    "State: AZ",
    "Height: 6`4",
    "Weight: 230",
    "Ethnicity: White",
    "Age: 23",
    "Eye Color: Blue",
    "Favorite Food: Thai",
    "Comments: awesome"
   ]
})';

$data = json_decode($json,true);
$pieces = explode(":", $data);
for ($i = 0; $i < count($data['array']); $i++) {
    echo $pieces[$i];
}
$json=
'({
“数组”:
[
“商店#:00608”,
“电话#:空”,
“地址:斯科茨代尔北路3014号”,
“城市:斯科茨代尔”,
“邮编:85251”,
“州:AZ”,
“高度:6`4”,
“体重:230”,
“种族:白人”,
“年龄:23岁”,
“眼睛颜色:蓝色”,
“最喜欢的食物:泰国”,
“评论:棒极了”
]
})';
$data=json_decode($json,true);
$pieces=分解(“:”,$data);
对于($i=0;$i
当我在浏览器中启动它时,我会看到一个空白屏幕,没有错误。最终目标是将它们存储到
PHP
数组中,如
'store#'、'00608'

不管怎样,我做错了什么?

试试这个JSON

$json = 
'{
  "array":
  [
    "Store #: 00608",
    "Phone #: null",
    "Address: 3014 N. SCOTTSDALE RD.",
    "City: SCOTTSDALE",
    "Zip: 85251",
    "State: AZ",
    "Height: 6`4",
    "Weight: 230",
    "Ethnicity: White",
    "Age: 23",
    "Eye Color: Blue",
    "Favorite Food: Thai",
    "Comments: awesome"
   ]
}';
注意我拿出了你的()

试试这个JSON

$json = 
'{
  "array":
  [
    "Store #: 00608",
    "Phone #: null",
    "Address: 3014 N. SCOTTSDALE RD.",
    "City: SCOTTSDALE",
    "Zip: 85251",
    "State: AZ",
    "Height: 6`4",
    "Weight: 230",
    "Ethnicity: White",
    "Age: 23",
    "Eye Color: Blue",
    "Favorite Food: Thai",
    "Comments: awesome"
   ]
}';

注意我拿出了你的()

我想这正是你想要的

$json = 
'{
  "array":
  [
    "Store #: 00608",
    "Phone #: null",
    "Address: 3014 N. SCOTTSDALE RD.",
    "City: SCOTTSDALE",
    "Zip: 85251",
    "State: AZ",
    "Height: 6`4",
    "Weight: 230",
    "Ethnicity: White",
    "Age: 23",
    "Eye Color: Blue",
    "Favorite Food: Thai",
    "Comments: awesome"
   ]
}';
$data = json_decode($json,true);

foreach($data['array'] as $piece) {
  $array = explode(': ', $piece);
  echo 'Key: '.$array[0].'<br />';
  echo 'Value: '.$array[1].'<br />';
  echo '<br />';
}

我想这正是你想要的

$json = 
'{
  "array":
  [
    "Store #: 00608",
    "Phone #: null",
    "Address: 3014 N. SCOTTSDALE RD.",
    "City: SCOTTSDALE",
    "Zip: 85251",
    "State: AZ",
    "Height: 6`4",
    "Weight: 230",
    "Ethnicity: White",
    "Age: 23",
    "Eye Color: Blue",
    "Favorite Food: Thai",
    "Comments: awesome"
   ]
}';
$data = json_decode($json,true);

foreach($data['array'] as $piece) {
  $array = explode(': ', $piece);
  echo 'Key: '.$array[0].'<br />';
  echo 'Value: '.$array[1].'<br />';
  echo '<br />';
}

JSON无效,因为JSON字符串周围有括号。删除这些,它将正确解析。

您的JSON无效,因为JSON字符串周围有括号。删除这些内容,它将正确解析。

$data=json\u decode($json,true);echo json_last_error();//打印出上一个json操作(encode/decode)的错误代码(如果有),您是代码4的幸运赢家-语法错误:)PHP可能反对使用
数组(这是一个关键字)。先换一下。数据必须采用这种格式吗?如果您可以使用
“Store”:“00608”
您可以直接将数据提取为
$json->myArray['Store']
@MikeW-well,这与我前面的问题有关。如果你有办法让我做到这一点,我就是ears@i_me_mine你已经接受了我最好的答案。这比以后拆分字符串更安全。如果有人在回复中输入
,您的服务器端
爆炸将失败。在验证时,您可以创建一个JSON对象。$data=JSON\u decode($JSON,true);echo json_last_error();//打印出上一个json操作(encode/decode)的错误代码(如果有),您是代码4的幸运赢家-语法错误:)PHP可能反对使用
数组(这是一个关键字)。先换一下。数据必须采用这种格式吗?如果您可以使用
“Store”:“00608”
您可以直接将数据提取为
$json->myArray['Store']
@MikeW-well,这与我前面的问题有关。如果你有办法让我做到这一点,我就是ears@i_me_mine你已经接受了我最好的答案。这比以后拆分字符串更安全。如果有人在回复中输入
,您的服务器端
爆炸将失败。在验证时,您可以创建一个JSON对象。恭喜您幸运地获得了“正确答案”=谢谢,伙计,我很感激。恭喜你幸运地获得了“正确答案”=谢谢,伙计,我很感激。