Php 打印包含字母的数组的某些元素

Php 打印包含字母的数组的某些元素,php,string,printing,contains,Php,String,Printing,Contains,我研究这个问题已经有一段时间了。假设我需要创建一个包含周一、周二、圣诞节和万圣节的数组。函数需要查找并打印包含字符串“day”的所有条目 我已经创建了以下内容 $day = array('Monday', 'Tuesday', 'Christmas', 'Halloween'); 然后我在数组中尝试了和str\u contains。老实说,我有点迷茫了。这是你的片段: $day = array('Monday', 'Tuesday', 'Christmas', 'Halloween'); f

我研究这个问题已经有一段时间了。假设我需要创建一个包含周一、周二、圣诞节和万圣节的数组。函数需要查找并打印包含字符串“day”的所有条目

我已经创建了以下内容

$day = array('Monday', 'Tuesday', 'Christmas', 'Halloween');
然后我在数组中尝试了
str\u contains
。老实说,我有点迷茫了。

这是你的片段:

$day = array('Monday', 'Tuesday', 'Christmas', 'Halloween');

foreach ($day as $d) {
    if (strpos($d,'day')) {
        echo $d;
    }
}

这就是
preg\u grep
构建的目的。也许是杀伤力过大,但效果不错。找到它们,然后用逗号(或任何形式)连接以显示:

echo implode(', ', preg_grep('/day/', $day));

使用
array\u filter
过滤
$days
数组中只有
$day
包含单词day的
str\u
。并使用
将它们连接回来以显示它们

$days=array('星期一'、'星期二'、'圣诞节'、'万圣节');
回声连接(',',数组过滤器($days,fn($day)=>str_包含($day,'day'));
//星期一、星期二

提示:使用上一版本PHP v.8提供的方法,该方法与
stru包含的方法相同,但我们要查找的单词必须位于字符串的末尾。

您放弃了吗?