我希望下面的代码做的是循环遍历$check_query
数组,找到所有包含单词standard的值并将它们推入数组。我还希望对包含upgrade的字符串执行此操作。示例$range_array应返回“standard-186”,“standard-184];
$check_query = ['standard-186', 'upgrade-186', 'standard-184', 'upgrade-184'];
$range_array = [];
$spec_array = [];
foreach($check_query as $value) {
if (in_array("standard", $value)) {
array_push($range_array, $value);
}
elseif (in_array("upgrade", $value)) {
array_push($spec_array, $value);
} else {
// Nothing
}
}
echo $range_array;
echo $spec_array;
字符串
3条答案
按热度按时间vbopmzt11#
这可以通过
array_filter()
在一行中完成字符串
输出
型
对于
$spec_array
,对$value
使用不同的值。对于PHP 8,可以使用
str_contains()
代替stripos()
:型
6yjfywim2#
在循环中,
$value
包含一个字符串,所以你必须检查你的字符串是否是该字符串的一部分。字符串
产出:
的数据
的
avwztpqn3#
声明两个独立的输出变量可能没有什么好处。要将数据分成两组,只需将每个字符串中的字母分隔开,然后将值推入该组/子数组。
在另一个答案下的评论中,你要求只存储每组中的数字部分。
sscanf()
是解析每个字符串并返回两部分的完美工具。通过在format参数中使用%d
,数字子字符串将被转换为整数。产品编号:(Demo)
字符串
输出量:
型