我尝试从数据库中获取名称和地址以及其他数据,其中名称和地址属性为文本格式,而其他属性为varchar格式。我不明白为什么有些名字和地址在数据库中不能被捕获。在大约5000条记录中,大约有300条记录的名称和地址无法在我的程序中捕获。经过调查,我找到了一些以空白开头的名字和地址。所以在我去掉那些空白之后,它就可以正常工作了。但对于其他人,我就不明白了。看起来只是普通的短信。代码如下:
$hasil_query1= json_encode($data->getData($query));
$obj1 = json_decode($hasil_query1,true);
$name=$obj1[0]['name'];
$address=$obj1[0]['address'];
当我打印$name或$ address时,其中一些没有出现(没有被捕获)。但是当我使用这段代码,而不是上面的代码,它工作得很好
$result = mssql_query($query);
while($row = mssql_fetch_array($result))
{
$name=$row['name'];
$address=$row['address'];
}
请帮我理解一下,因为我只是现在才看到它。
试试这个
$hasil_query_baru = array();
$hasil_query1= $data->getData($query);
foreach($hasil_query1 as $row){
$hasil_query_baru[] = array_value($row);
}
$hasil_query1 = json_encode($hasil_query_baru);
...
var_dump可能有助于理解问题。
var_dump($data->getData($query));
我发现答案从php json_encode()显示's null而不是文本
"json_encode期望数据中的字符串被编码为UTF-8。
如果它们还不是"
将它们转换为UTF-8 "~ phihag
感谢死亡外科医生给我的链接。