繁体   English   中英

如果数组包含特定字符,则返回所有字符串php

[英]If array contains a specific character, return all of the string php

假设我有一个像这样的php数组:

$compare  = array("Testing", "Bar");
$my_array = array(
                "Foo=7654", "Bar=4.4829", "Testing=123" 
        );

因此,可以肯定地说:

$compare[0] = "Testing"  

所以我想检查$my_array包含$compare[0] (在上面的情况下,是的),并且如果包含$my_array值返回Testing = 123的值。

那怎么可能

您可以使用foreach循环:

$result = array();
foreach ($compare as $comp) {
    foreach ($my_array as $my) {
        if (strpos($my, $comp) !== false) {
            $result[] = $comp;
        }
    }
}

数组$result是搜索的结果

或通过其他方式:

$result = array();
foreach ($compare as $comp) {
    foreach ($my_array as $my) {
        if ($comp = explode('=', $my)[0]) {
            $result[] = $comp;
        }
    }
}

要使用单个循环...

$compare  = array("Testing", "Bar");
$my_array = array(
    "Foo=7654", "Bar=4.4829", "Testing=123"
);
$output = [];

foreach ( $my_array as $element )   {
    if ( in_array(explode('=', $element)[0], $compare)){
        $output[] = $element;
    }
}
print_r($output);

这只是检查值的第一部分(在=之前)是否在$compare数组中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM