有人能帮我理解为什么我会犯以下错误吗?
类对象stdClass无法在中转换为字符串。(错误指向带有内爆()的行,如下所示)
当我运行以下函数时?
function selectFullArticle () {
global $wpdb;
$id=get_the_ID();
$webPageArticle = $wpdb->get_results( "SELECT post_content_long FROM $wpdb->posts WHERE ID=$id" );
$webPageArticle= implode(" ",$webPageArticle);
return $webPageArticle;
}
我的目标是返回一个字符串,而不是数组。
也许从SELECT返回的数组必须以不同的方式处理?
提前谢谢你,
玛丽娜
谢谢你的回答。我试图显示一个网页,我从网上下载,并保存在一个wordpress数据库,而不是一个帖子。
$webPageArticle = $wpdb->get_results(“从$wpdb->post WHERE ID=$id,ARRAY_N中选择post_content_long”)和$webPageArticle = $wpdb->get_results(“从$wpdb->posts中选择ID=$id",ARRAY_A);
工作得很好,not ()不再抱怨了。但是,我没有得到真正的字符串,因为语句"echo $webPageArticle;“将屏幕上的单词"Array”可视化。T
怎么会这样?
玛丽娜
发布于 2011-10-11 02:08:15
在Codex中读取时,可以向get_result()传递额外的第二个参数,以允许它返回数组而不是对象
<?php $wpdb->get_results('query',OBJECT_K); ?>
返回一个可以操作的关联数组。
参考资料:
OBJECT - result will be output as a numerically indexed array of row objects.
OBJECT_K - result will be output as an associative array of row objects, using first column's values as keys (duplicates will be discarded).
ARRAY_A - result will be output as an numerically indexed array of associative arrays, using column names as keys.
ARRAY_N - result will be output as a numerically indexed array of numerically indexed arrays
发布于 2011-10-11 02:06:14
function selectFullArticle () {
$id=get_the_ID();
$webPageArticle = get_post($id, ARRAY_A);
$webPageArticle= implode(" ", $webPageArticle);
return $webPageArticle;
}
如果我认为它是正确的,并且您只想要post内容,请使用以下命令:
function selectFullArticle () {
$id=get_the_ID();
$webPageArticle = get_post($id);
return $webPageArticle->post_content;
}
https://stackoverflow.com/questions/7724311
复制