我如何过滤我的内容并在其他地方显示这些值。内容是通过XML加载的,由我们的客户端填充。因此我无法更改值。问题是我的值在不同的行上。我目前正在过滤一些值:
if (!empty($arraywithvalues)) {
$array = explode("<br>", $arraywithvalues);
foreach( $array as $key => $value){
if (
strpos(strtolower($value),'oppervlakte') !== FALSE ||
strpos(strtolower($value),'perceel') !== FALSE ||
strpos(strtolower($value),'golf') !== FALSE
) {
$filtered_content[] = $value;
unset($array[$key]);
}
};
字符串
这是为了过滤掉文本位,这是成功完成的,可以在this website上看到。问题是仍然有一些值需要过滤掉,比如:
20 M2
20公里
然而,过滤本身是没有问题的。我遇到的问题是把一个和另一个旁边的值。所以,例如。距离高尔夫(* 第一过滤值 )-20公里( 第二过滤值 *)。我如何才能实现这一点?
XML导入时:
string(82)"
Bebouwde oppervlakte
80 M2
Terras oppervlakte
20 M2
Keuken oppervlakte
12 M2"
型
4条答案
按热度按时间u5rb5r591#
PHP8
字符串
PHP7
型
输出
型
nbnkbykc2#
假设记录是按上面的顺序排列的,这是相当容易的。你缓冲第一行,然后保持阅读,直到第二个值的行到来。然后连接缓冲区和当前值。
字符串
nhhxz33t3#
它有点草率,但我认为它完成了工作:
字符串
最后你会得到一个key=>value的数组,像这样:
型
你可以循环通过它,并显示你想要的
inn6fuwd4#
因为你的示例输入文本只包含要保留的文本,所以只需要使用
preg_match_all()
来捕获连续的文本对,然后使用array_column()
将这些文本对组成一个关联数组。字符串
输出量:
型