mysql - php 在值中找字串
PHP中文网
PHP中文网 2017-04-10 17:37:05
[PHP讨论组]

每個用戶有一個欄位叫做skills
可能是 哈囉,你好,再見,不錯,太棒了 但每個人都不太一樣
我要如何找出該欄位的字元
若他的skills欄位有 太棒了 則顯示checked..類似這樣?

補充


 $value){  ?>
     >
        
        

明明有哈囉,你好,再見,不錯,太棒了
但是他卻只有 你好,再見,不錯,太棒了 有checked?
這是哪裡有問題?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(4)
伊谢尔伦

没太看懂你的意思,不知道这是不是你要的

<?php
$sys_arr = explode(',','哈囉,你好,再見,不錯,太棒了');
$skills = explode(',','你好,再見');
foreach($sys_arr as $v){
    $ck = in_array($v,$skills)?' checked':'';
    echo "<input type='checkbox' value='{$v}'{$ck}>{$v}\n";
}
巴扎黑

把你回复的代码中的 strpos($skills,$value) 这个判断改成 if(strpos($skills,$value) !== false) 因为可能匹配位置为 0 的 skills

大家讲道理
strops()返回 needle 存在于 haystack 字符串起始的位置(独立于 offset)。同时注意字符串位置是从0开始,而不是从1开始的。
如果没找到 needle,将返回 FALSE。

判断语句改成 if(strpos($skills,$value) !== false)

strops函数

怪我咯

写sql语句时 select id from table where skills like '%太棒了%'

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号