繁体   English   中英

in_array的问题

[英]Issues with in_array

我有以下相当简单的代码,需要确定数组中是否存在某个值:

$testvalue = $_GET['testvalue']; // 4
$list = '3, 4, 5';
$array = array($list);

if (in_array($testvalue, $array)) { // Code if found } else { // Code if not found }

即使很明显数字4在数组中,该代码也会返回else bracets内部的代码。 我做错了什么?

$array这里是:

$array = array('3, 4, 5');

这与以下内容不同:

$array = array(3, 4, 5);

因此,请修正创建此数组的方式。请不要从字符串中进行操作。

更改第三行:

$array = array_map('trim', explode(',',$list));

您的数组仅包含一个值,字符串3, 4, 5

请参阅CodePad上的示例

如果要在数组中转换字符串,可以使用:

$array = explode(', ', $list);

我在逗号后面添加了一个空格,但是更安全的方法是只使用逗号然后修剪所有值。

暂无
暂无

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

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