在这个项目中,我正在筛选非格式化的HTML代码并查找特定值,下面是段落解构函数的一段代码。我使用preg_replace来删除任何不需要的HTML代码,直到我最终得到由html
标签分隔的一小组变量。以下是我遇到问题的逻辑部分。出于某种原因,我在尝试打印数组$ pieces的第5个位置时收到未定义的偏移5错误。我正在使用explode函数来创建数组,并且包含了我正在运行的html代码块。
$new_broken_var = preg_replace($para_search, $para_replace, $para_subject);
$pieces = explode("<br>", $new_broken_var);
echo $pieces[5];
//upon echoing $new_broke_var I received the below html as it's value
//<font face="Arial" size="2">For 06/01/13 to 06/30/13<br>
//Report Generated: Thursday, July 11, 2013<br>Unit: 204 <br>
//Driver:<br>Owner:<br>Number of Trips: 27<br>Fuel Type: Diesel</font>
//creates an array using <br> as it's delimiter on the commented code above
//the variable we want is in position number 5 within the array. and confirmed via print_f($pieces);
答案 0 :(得分:0)
检查所请求的索引是否确实存在于数组中是一种很好的做法。
if (isset($pieces[5])) {
echo $pieces[5];
}
索引可能由于各种原因而不存在,但在您的情况下,您的段落似乎是空的,导致explode()
返回包含单个元素的数组。