查看php文档不是很清楚,如果第一个元素包含特定的文本,我如何用新字符串替换数组中的单个元素的内容。换句话说,如果我的数组在‘#ff0000’元素中包含颜色,那么就用单词RED替换#ff0000
$data = "[{"name":"Bowie Hospital Center","time":["","",""],"color":[false,false,false]},{"name":"Calvert Memorial Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Charles Regional (UM)","time":["","","",""],"color":[false,false,false,false]},{"name":"Doctors Community Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Fort Washington Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Germantown EC","time":["","",""],"color":[false,false,false]},{"name":"Holy Cross Germantown","time":["","","",""],"color":[false,false,false,false]},{"name":"Holy Cross Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Laurel Regional Medical Center","time":["","09:20","",""],"color":[false,"background-color:#ff0000;color:#000000;",false,false]},{"name":"Malcolm Grow","time":["","",""],"color":[false,false,false]},{"name":"Montgomery Medical Center (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Prince Georges Hospital Center","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Shady Grove Advent Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Southern Maryland Hospital\u00a0 (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"St. Mary\u2019s Hospital\u00a0 (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Suburban Hospital (JHM)","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Walter Reed NMMC","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Washington Adventist Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Childrens National Medical Center","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"George Washington Hospital","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Georgetown University (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Howard University Hospital","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"MedStar Washington Hospital Center","time":["10:09","","","",""],"color":["background-color:#ffff00;color:#000000;",false,false,false,false]},{"name":"Providence Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Sibley Memorial Hospital (JHM)","time":["","","",""],"color":[false,false,false,false]},{"name":"United Medical Center","time":["10:09","10:09","",""],"color":["background-color:#ffff00;color:#000000;","background-color:#ff0000;color:#000000;",false,false]}]";
$json = json_decode($data, true);
myArray($json);
function myArray($arry) {
foreach($arry as $key => $value) {
$result .= $value['name']. chr(10);
$length = count($value["color"]);
for ($i = 0; $i < $length; $i++) {
if($value['time'][$i] != "") {
if(in_array('background-color:#ff0000;color:#000000;', $value['color'][$i])) {
$value['color'][$i] = 'RED';
}
$result .= $value["color"][$i] . chr(10) . $value["time"][$i] . chr(10) . chr(10);
}
}
}
return $result;
}示例数据:
[{"name":"Bowie Hospital Center","time":["","",""],"color":[false,false,false]},{"name":"Calvert Memorial Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Charles Regional (UM)","time":["","","",""],"color":[false,false,false,false]},{"name":"Doctors Community Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Fort Washington Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Germantown EC","time":["","",""],"color":[false,false,false]},{"name":"Holy Cross Germantown","time":["","","",""],"color":[false,false,false,false]},{"name":"Holy Cross Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Laurel Regional Medical Center","time":["","09:20","",""],"color":[false,"background-color:#ff0000;color:#000000;",false,false]},{"name":"Malcolm Grow","time":["","",""],"color":[false,false,false]},{"name":"Montgomery Medical Center (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Prince Georges Hospital Center","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Shady Grove Advent Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Southern Maryland Hospital\u00a0 (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"St. Mary\u2019s Hospital\u00a0 (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Suburban Hospital (JHM)","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Walter Reed NMMC","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Washington Adventist Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Childrens National Medical Center","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"George Washington Hospital","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"Georgetown University (MedStar)","time":["","","",""],"color":[false,false,false,false]},{"name":"Howard University Hospital","time":["","","","",""],"color":[false,false,false,false,false]},{"name":"MedStar Washington Hospital Center","time":["10:09","","","",""],"color":["background-color:#ffff00;color:#000000;",false,false,false,false]},{"name":"Providence Hospital","time":["","","",""],"color":[false,false,false,false]},{"name":"Sibley Memorial Hospital (JHM)","time":["","","",""],"color":[false,false,false,false]},{"name":"United Medical Center","time":["10:09","10:09","",""],"color":["background-color:#ffff00;color:#000000;","background-color:#ff0000;color:#000000;",false,false]}]发布于 2017-01-09 23:43:00
而不是
if(in_array('background-color:#ff0000;color:#000000;', $value['color'][$i]))尝试使用一个简单的正则表达式:
if(preg_match('/#ff0000/', $value['color'][$i])) https://stackoverflow.com/questions/41550867
复制相似问题