php explode函数的使用问题

$str='美国有很多的国外银行';$sql1="select*fromkeywordsorderbyidasc";$keywords="";$rs=mysql_quer... $str ='美国有很多的国外银行';
$sql1=" select * from keywords order by id asc ";
$keywords="";
$rs=mysql_query($sql1,$con);
while($row=mysql_fetch_array($rs))
{
echo $row['keywords']." ".$str;
$a=explode($row['keywords'],$str);
echo sizeof($a)-1;
echo "<br/>";
}

输出结果是:
国外银行 美国有很多的国外银行0
国内银行 美国有很多的国外银行0
美国 美国有很多的国外银行0
中国 美国有很多的国外银行0

请问问题出在什么地方?
按说 第一行和第三行输出的数字应该是1才对啊?怎么都成0了?我是想统计关键字在字符串中出现的次数!望各位高手赐教一下,感激不尽!
展开
 我来答
anyokn88
2013-01-28 · 超过18用户采纳过TA的回答
知道答主
回答量:108
采纳率:0%
帮助的人:46.5万
展开全部
你的第一个按国外银行去分割 就变成了 美国有很多的| 就这一个数据 ‘国外银行’ 只起分割作用,不会变成你数组的第2个值 所以里面的值只有一个

——比如 $a='1,2,3,4,5';
$b =explode(',',$a);
那么值就有5个了 分别是$b=Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 ) 逗号是分隔符 是没有了的
追问
你的意思我基本明白了,谢谢,那请问我要实现统计关键字出现次数这个功能,该如何做呢?
追答
substr_count($str,$row['keywords']);    这个就可以找出每句中关键字出现的次数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
free95
2013-01-28 · TA获得超过163个赞
知道小有建树答主
回答量:132
采纳率:100%
帮助的人:93.4万
展开全部
问题很有趣,呵呵,我看到的代码和结果都是正确的,不知道你要问什么,或者你要得到什么结果?
每一次explode得到的数组都是一个啊,当然-1后就是0了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奈蒙
2013-01-28 · TA获得超过211个赞
知道小有建树答主
回答量:491
采纳率:0%
帮助的人:213万
展开全部
你想干什么啊这个sizeof? 函数用错了 $a=explode($row['keywords'],$str); echo sizeof($a)-1; 辙行换成换成 echo substr_count($str,$row['keywords']);
更多追问追答
追问
我是想统计关键字在字符串中出现的次数
追答
函数用错了 $a=explode($row['keywords'],$str); echo sizeof($a)-1; 辙行换成换成 echo substr_count($str,$row['keywords']);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式