php foreach每个结果在一个变量

时间:2014-01-10 14:35:09

标签: mysql variables foreach php

我试图将查询的每个结果都放到一个变量中,以便我可以将它包含在我的wp_mail消息中。

这就是我正在使用的。

$result = $wpdb->get_results("SELECT * 
                               FROM $tableName 
                               WHERE userId = $user_ID 
                               AND status LIKE '1'"
                            );
foreach( $result as $key => $value)
{
    $string .= $value.',';
}

echo $string;
$email = $_POST['parentsEmail'];    
$child = $_POST['childsName'];
wp_mail( $email, "".$child." has finished", "".$child." has completed the following ".$string." ");

我一直在寻找,并发现另一个线程问一些类似的东西,这是建议的。

$string .= $value.',';

然而,当我尝试做同样的事情时,我得到了

捕获致命错误:类stdClass的对象无法转换为

中的字符串

2 个答案:

答案 0 :(得分:2)

您可以使用mysql

来代替
SELECT 
    CONCAT(col1,col2,col3) `value`
FROM $tableName 
WHERE userId = $user_ID AND status LIKE '1'

您可以使用mysql ok

来代替

答案 1 :(得分:1)

您可以在SQL语句中使用GROUP_CONCAT()函数连接行字段:

$sql = "
    SELECT GROUP_CONCAT(field_name) AS concat_alias
    FROM $tableName
    WHERE userId = $user_ID AND status LIKE '1'
";
echo $string = $wpdb->get_var($sql);