变量 如何赋值给数组 PHP

$a=9,10,11,
$arr = array('$a');

变量A是从数据库中取得的字符串,我想放在数组中,方便下面用来判断
in_array('9',$arr) 这样是取不到值。有什么地方不对吗?

$arr 赋值成数组应该是$arr = array('k' =>'$a'); 数组是key.value形式的 你想把$a 存进数组里,直接,把$a按逗号炸开,就是个数组了追问

如果我改成这样 $arr = array(9,10,11); 这样就正常

追答

对的,主页使用默认key,如果是var_dump一下$arr就可以看到了 真是数组是$arr = array (
0 => 9,
1 => 10,
2 => 11) 这样的形式

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-27
将字符串去掉最后一个逗号,分割字符串即可
$arr=$a.split(",");追问

分割后在判断吗?不太明白

追答

干嘛要判断,分割后就是数组了

追问

不太明白,我要的就是 从数据库中取出来的数值,与我页面中的数值对比,看有没有一样的

追答

完全不需要使用数组,php本身就有这样的函数。而且有好几个,自己百度一下吧

strpos($a, $b) !== false 如果$a 中存在 $b,则为 true ,否则为 false。
用 !== false (或者 === false) 的原因是如果 $b 正好位于$a的开始部分,那么该函数会返回int(0),那么0是false,但$b确实位于$a中,所以要用 !== 判断一下类型,要确保是严格的 false。
其它的还有 PHP 原生支持的函数,如 strstr(),stristr() 等,直接判断就可以了。

本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网