如果值部分匹配

时间:2015-04-22 23:32:36

标签: php wordpress multidimensional-array

我写了一个多语言wordpress主页。我需要将所有语言加载到数组中,然后检测用户语言,然后根据用户语言从数组中删除其他语言。

我想对数组进行部分检查以查看" Title"包含_DE或_ES,然后根据结果从数组中删除一个或另一个。

到目前为止我已经

数据

array(2) { 
[1]=> array(3) { ["order"]=> string(1) "1" ["title"]=> string(9) "Slider_ES" ["id"]=> string(3) "500" } 

[2]=> array(3) { ["order"]=> string(1) "2" ["title"]=> string(11) "Slider_DE" ["id"]=> string(3) "493" } 

} 

逻辑

$current_language = get_locale(); // Wordpress function which returns either es_ES or de_DE codes

if ($current_language == es-ES) {

    foreach ($array as $key => $item) {
        if ($item['title'] === '_DE') {
            unset($array[$key]);
        }
    }

} else {

    foreach ($array as $key => $item) {
        if ($item['title'] === '_ES') {
            unset($array[$key]);
        }
    }

}

我错过了什么?

1 个答案:

答案 0 :(得分:0)

您可以使用strpos函数来查找其中一个字符串的出现,如下所示:

if (strpos($item['title'],'_DE') !== false) {
    unset($array[$key]);
}