我怎么能算出匹配字符串的单词...就像那匹配的' 201'在
这是我的后退......
<?php
$con=mysqli_connect("localhost","root","","project");
function loadData()
{
global $con;
$listData="";
$sql=mysqli_query($con,"SELECT fGuests,mGuests FROM reserved");
while($row=mysqli_fetch_array($sql))
{
$mf= array();
$mf[]=$row['mGuests'].';'.$row['fGuests'];
$data = array(
'mf'=>$mf
);
$listData[]=$data;
}
return json_encode($listData);
}
echo loadData();
&GT?; 这是我的AJAX ......
function x()
{
$.ajax({
url:"ajax/try.php",
type:"GET",
dataType:"JSON",
data:"",
success:function(data)
{
$.each(data,function(i,item)
{
var m=item.match(/201/g).length;
$("#roomList2").append(m);
});
}
});
}
x();
仅供输出6 ......
它应该是8 ......
答案 0 :(得分:2)
我认为你只是在追加之前读取数组中的第一个对象(每个循环遍历而不是返回连接的所有结果)。这可能是因为当匹配为数组的第二个元素返回null时会出现错误(该数组中没有201)。需要添加一个if来检查匹配是否返回任何内容。您还希望在添加这些数字之前将它们添加在一起。
function x()
{
$.ajax({
url:"ajax/try.php",
type:"GET",
dataType:"JSON",
data:"",
success:function(data)
{
var m = 0;
$.each(data,function(i,item)
{
var matched = item.mf.match(/201/g);
if(matched) {
m += matched.length;
}
});
$("#roomList2").append(m);
}
});
}
x();