Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.2k views
in Technique[技术] by (71.8m points)

php 怎样判断逗号分隔的字符串是否包含某个字符串

比如:$abc="1,21,32,44,55";

如果直接判断是否包含字符串+逗号的话,比如“1,”explode函数、substr函数、这些判断子串函数就会有问题,一般用循环是可以检测,php有没有什么内置的方法,可以判断出来。

比如类似这种:

$needle= '1';
explode($needle,$abc,','); 

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

没太看懂,是要判断里面有没有完整的 1, 吗?但又不命中 21, 这种吗?如果是这个需求,给首尾加上 , 就行了,','.$abc.',' 变成 ,1,21,32,44,55, 然后找 ,1, 就行了。

strpos(','.$abc.',', ','.needle.',') !== false

另一位兄弟说的先 explode 后 in_array 也行。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...