Php 遍历字符串laravel并获取值
我有这样的字符串:Php 遍历字符串laravel并获取值,php,json,laravel,Php,Json,Laravel,我有这样的字符串: $filters= {"DestinationZone":"","date":"2019-12-13","PolicyName":"","CloseReason":"","ApplicationName":"","level":"","Host":""} 我想遍历这个字符串,并将其划分为键和值 我尝试了很多,但我不知道为什么它不想工作。 这是我试过的代码 $filters=str_replace('{','', $filters); $filters=str_r
$filters= {"DestinationZone":"","date":"2019-12-13","PolicyName":"","CloseReason":"","ApplicationName":"","level":"","Host":""}
我想遍历这个字符串,并将其划分为键和值
我尝试了很多,但我不知道为什么它不想工作。
这是我试过的代码
$filters=str_replace('{','', $filters);
$filters=str_replace('}','', $filters);
$filters=explode(',',$filters);
for($i=0;$i<count($filters);$i++){
$xx=explode(':',$filters[$i]);
var_dump($xx);
foreach ($xx as $xx)
{ $value=trim($xx,'"');
var_dump($value);
// $key=trim($key,'"');
if (!empty($value)) {
//$query->where("$key", '=', "$value");
}
}
}
我认为这段代码非常混乱,我使用的是laravel,这不是laravel框架,而是基本的PHP 变量 $filters变量出现错误 $filters={DestinationZone:,日期:2019-12-13,策略名称:,关闭原因:,应用程序名称:,级别:,主机:} 您拥有的JSON必须是字符串 $filters='{DestinationZone:,日期:2019-12-13,策略名称:,关闭原因:,应用程序名称:,级别:,主机:}'; 键值 如果要将$filters转换为数组,只需使用: $filters=json_decode$filters,true; 结果 只需使用json_decode$过滤器,如果为true,您将获得数组。
array:7 [
"DestinationZone" => ""
"date" => "2019-12-13"
"PolicyName" => ""
"CloseReason" => ""
"ApplicationName" => ""
"level" => ""
"Host" => ""
]