首先感谢您的关注!PHP每个或每个打印数据
运行查询后,我有这样的结果:
--------------------------------------
|post_id| meta_key | meta_value |
--------------------------------------
| 1 | name | jeff |
--------------------------------------
| 1 | email | [email protected] |
--------------------------------------
| 1 | color | blue |
--------------------------------------
| 2 | name | mary |
--------------------------------------
| 2 | email | [email protected] |
--------------------------------------
| 2 | color | pink |
--------------------------------------
的阵列
array(6)
{
[0]=> object(stdClass)#448 (3)
{
["post_id"] => string(1) "1"
["meta_key"] => string(4) "name"
["meta_value"] => string(4) "jeff"
}
[1]=> object(stdClass)#449 (3)
{
["post_id"] => string(1) "1"
["meta_key"] => string(4) "email"
["meta_value"] => string(10) "[email protected]"
}
[2]=> object(stdClass)#450 (3)
{
["post_id"] => string(1) "1"
["meta_key"] => string(5) "color"
["meta_value"] => string(4) "blue"
}
[3]=> object(stdClass)#448 (3)
{
["post_id"] => string(1) "2"
["meta_key"] => string(4) "name"
["meta_value"] => string(4) "mary"
}
[4]=> object(stdClass)#449 (3)
{
["post_id"] => string(1) "2"
["meta_key"] => string(4) "email"
["meta_value"] => string(10) "[email protected]"
}
[5]=> object(stdClass)#450 (3)
{
["post_id"] => string(1) "2"
["meta_key"] => string(5) "color"
["meta_value"] => string(4) "pink"
}
}
好,我有3个标签和3个值1组的ID。使用PHP,我需要知道如何做一个foreach或每个打印这个数据是这样的:现在
---------------------------------------------------
|post_id| name | email | color |
---------------------------------------------------
| 1 | jeff | [email protected] | blue |
---------------------------------------------------
| 2 | mary | [email protected] | pink |
---------------------------------------------------
,与科斯塔斯Mitsarakis的帮助下,我有一个代码,但是这个代码,于我而言,是返回NULL值。
代码:
global $wpdb;
$meta_value = interested_get_meta('interested_email');
$results = $wpdb->get_results(
'SELECT post_id, meta_key, meta_value
FROM wp_postmeta
WHERE post_id
IN ( SELECT post_id
FROM wp_postmeta
WHERE meta_value = "'.$meta_value.'"
)', OBJECT
);
$data = array();
$result = array($results);
foreach($result as $key => $value) {
if (!in_array($value['post_id'], $data)) {
$data[$value['post_id']]['post_id'] = $value['post_id'];
}
if ($value['meta_key'] != 'post_id') {
$data[$value['post_id']][$value['meta_key']] = $value['meta_value'];
}
}
var_dump($data);
的var_dump的回报:
array(1) { [""]=> array(2) { ["post_id"]=> NULL [""]=> NULL } }
你能显示查询吗?我认为如果你有使用SQL的权利结果会更好。 –
做一个'GROUP BY id'和一个ORDER BY,然后将它设置在HTML格式化的表格中。 –
你可以运行并模3,但更好的解决办法是修改查询 – Robert