Php in_array()-关于具体返回true的内容的帮助

Php in_array()-关于具体返回true的内容的帮助,php,arrays,Php,Arrays,回答:该函数按照我的要求工作。我的测试PHP中有一个输入错误,使得它无论如何都返回TRUE。 我使用的是in_数组,我试图以一种方式使用它,只有当它与数组中的一个对象完全匹配时,它才会返回true,而不仅仅是当它“在”数组中时。 e、 g 在上面的示例中,我只希望版本2返回true,因为它具有确切的字符串“23”。 但是版本1也返回true,因为数组包含字符串“23”的实例 我如何才能让它工作,只有版本2返回true?我是否使用了正确的函数?此函数不是正则表达式函数。它检查数组中是否存在该精确值

回答:该函数按照我的要求工作。我的测试PHP中有一个输入错误,使得它无论如何都返回TRUE。

我使用的是in_数组,我试图以一种方式使用它,只有当它与数组中的一个对象完全匹配时,它才会返回true,而不仅仅是当它“在”数组中时。 e、 g

在上面的示例中,我只希望版本2返回true,因为它具有确切的字符串“23”。 但是版本1也返回true,因为数组包含字符串“23”的实例


我如何才能让它工作,只有版本2返回true?我是否使用了正确的函数?

此函数不是正则表达式函数。它检查数组中是否存在该精确值,而不是与该值“相似”的值。检查“23”是否在数组中不会为“234”返回true

in_array("23", array("23")); // true
in_array("23", array(23)); // true
in_array("23", array("234")); // false (0)

但是,请注意,它将针对不同的铸件进行检查。

此函数不是正则表达式函数。它检查数组中是否存在该精确值,而不是与该值“相似”的值。检查“23”是否在数组中不会为“234”返回true

in_array("23", array("23")); // true
in_array("23", array(23)); // true
in_array("23", array("234")); // false (0)

但是,请注意,它将针对不同的铸件进行检查。

版本1不会返回true。该函数完全按照它应该的方式工作

<?php

$sample_array1 = array('123', '234', '345');
$sample_array2 = array('23', '34', '45');

echo in_array('23', $sample_array1);        // 0
echo in_array('23', $sample_array2);        // 1

版本1不返回true。该函数完全按照它应该的方式工作

<?php

$sample_array1 = array('123', '234', '345');
$sample_array2 = array('23', '34', '45');

echo in_array('23', $sample_array1);        // 0
echo in_array('23', $sample_array2);        // 1

在PHP中运行测试后,
in_array(“23”,array(“234”))
确实返回false,而不是true。如果将第三个参数(strict)设置为true,它将严格检查类型,即«(in_array(“23”,array(23),true))==false»在第三个示例之后,我没有注意到//true。。这是一个打字错误,是吗?@Intuite:是的,但我在发布后几分钟就纠正了。我的错——我不小心在我的“如果”语句后面直接加了一个分号,所以不管怎样,一切都是正确的。在PHP中运行测试后,
in_array(“23”,array(“234”)
确实返回false,而不是true。如果将第三个参数(strict)设置为true,它将严格检查类型,即«(in_array(“23”,array(23),true))==false»在第三个示例之后,我没有注意到//true。。这是一个打字错误,是吗?@Intuite:是的,但我在发布后几分钟就纠正了。我的错——我不小心在我的“如果”语句后面直接加了一个分号,所以不管怎样,一切都是正确的。它工作正常,你完全正确。我的php中有一个额外的分号,不管“if”语句是什么,它都将我的测试作为“YES”进行回显。你知道我是否有办法删除这个问题,以免混淆任何人吗?你的问题下面应该有一个“删除”链接。有很多答案和投票支持系统允许我删除它…你完全正确。我的php中有一个额外的分号,不管“if”语句是什么,它都将我的测试作为“YES”进行回显。你知道我是否有办法删除这个问题,以免混淆任何人吗?在你的问题下面应该有一个“删除”链接。有很多答案和投票支持系统允许我删除它…