Php 回显结果以显示每个的所有值
我有一个内部连接的MySql select:Php 回显结果以显示每个的所有值,php,mysql,foreach,Php,Mysql,Foreach,我有一个内部连接的MySql select: $estateSettings = getEstateOptionsArray(); foreach($estateSettings as $s) { $i = url_title($s, "", true); $data = $wpdb->get_col(" SELECT meta.meta_value
$estateSettings = getEstateOptionsArray();
foreach($estateSettings as $s) {
$i = url_title($s, "", true);
$data = $wpdb->get_col("
SELECT meta.meta_value
FROM $wpdb->postmeta meta
INNER JOIN wp_posts ON meta.post_id = wp_posts.id
WHERE meta.meta_key = '{$i}' AND wp_posts.post_type = 'estate'
");
$returnData = $s." : ";
foreach($data as $v) {
$returnData .= $v.", ";
}
}
没关系,$v包含这些值,但问题是如果我只是echo
It out,它只显示最后的结果值。如果我echo
它是这样的:
echo $returnData .= $v.", ";
它显示名称和所有结果值
我如何在没有返回数据的情况下回显结果并显示所有值
我又卡住了。我只得到了值,但它重复了它们
$ingatlanSettings = getIngatlanOptionsArray();
foreach($ingatlanSettings as $s) {
$i = url_title($s, "", true);
$data = $wpdb->get_col("
SELECT meta.meta_value
FROM $wpdb->postmeta meta
INNER JOIN wp_posts ON meta.post_id = wp_posts.id
WHERE meta.meta_key = '{$i}' AND wp_posts.post_type = 'ingatlan'
");
$returnData = $s." : ";
foreach($data as $v) {
$returnData .= $v.", ";
$result[] = $v;
}
$res = $element.implode($result);
echo $res;
}
查看数组包含内容的一个好方法是使用以下简单脚本:
<?php
echo "<pre>"; print_r($YourArray); echo "</pre>";
?>
了解阵列中的实际内容有助于解决许多问题
echo $returnData .= $v.", ";
用这个代替循环
没问题,$v包含
值,但问题是
只需重复它,它只显示
最后一个结果值,如果我像
此echo$returnData.=$v.“,”;信息技术
显示名称和所有结果值
这就是你失去我的地方。当您回显结果时,您正在执行以下操作:
echo $returnData;
还是你在呼应:
$returnData = $s." : ";
$resdata = array_unique($data);
foreach($resdata as $v) {
$returnData .= $v.", ";
echo $result[] = $v;
执行后一种操作将返回您准备好的包含所有值的完整字符串
不过我想了解你问题的本质。您是否试图以特定的方式格式化$returnData
,然后返回原始数据?谢谢大家的帮助,我能够完成此任务
非常感谢大家我的意思是我仍然得到了最后一个值“$wpdb->get_col”做了什么?@Tokk:这不就是说echo$returnData吗。内爆(“,”,$data)代码>。这个循环在那个时候变得不必要了。@Michael McTiernan:谢谢。我没有注意到。不要误会我,但我爱你,在你的帮助下我成功了,非常感谢
echo $returnData;
$returnData = $s." : ";
$resdata = array_unique($data);
foreach($resdata as $v) {
$returnData .= $v.", ";
echo $result[] = $v;