Php 如果有更好的方法来检查这些数组键
我希望看到是否有更好的方法来检查那些数组键,如果它们存在的话。我使用的是基本if语句Php 如果有更好的方法来检查这些数组键,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我希望看到是否有更好的方法来检查那些数组键,如果它们存在的话。我使用的是基本if语句 $rules = array( 'extensions' => ['png', 'gif', 'jpg', 'jpeg'], 'mimes' => ['image/png', 'image/gif', 'image/jpeg', ]); if (in_array($mime_type, $rules['mimes'])) { echo "&l
$rules = array(
'extensions' => ['png', 'gif', 'jpg', 'jpeg'],
'mimes' => ['image/png', 'image/gif', 'image/jpeg',
]);
if (in_array($mime_type, $rules['mimes']))
{
echo "<br>Valid Image!<br>>";
}
else
{
echo "<br>Ivalid Image!<br>>";
}
if (in_array($file_type, $rules['extensions']))
{
echo "<br>Valid Extension<br>";
}
else
{
echo "<br>Ivalid Extension<br>";
}
$rules=数组(
'extensions'=>['png','gif','jpg','jpeg'],
“mimes”=>[“image/png”、“image/gif”、“image/jpeg”,
]);
if(在数组中($mime\u type,$rules['mimes']))
{
回显“
有效图像!
”;
}
其他的
{
回声“
Ivalid图像!
”;
}
if(在数组($file\u type,$rules['extensions'])中)
{
回显“
有效扩展名
”;
}
其他的
{
echo“
Ivalid扩展名
”;
}
您正在检查键/值吗?
在您的问题标题中,它说的是键,但您正在搜索上述代码中的值。
若要获取值,若它是一个简单的一维数组,那个么数组中的数组将有所帮助。
要获取密钥,可以使用数组检查密钥是否存在。
如果是多维数组,可以这样尝试:可以修改逻辑以在同一个函数中同时获取key/val。
如果有帮助,请告诉我。我觉得您的代码不错,但为了节省一些行,您可以使用,即:
它成功了,谢谢你的时间分配,是的,它让我免于分配if语句
$result = [];
array_walk_recursive($rules, function ($item) use (&$result, $file_type, $mime_type)
{
if (preg_match("@$mime_type|$file_type@i", $item))
{
$result[] = $item;
}
}
);
if (count($result) > 1) {
print "both values";
}