- 已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。
这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
16小时前关门了。
Improve this question
我试图通过使用以下代码获取一些由自定义字段插入到WordPress MySQL表wp_usermeta中的数据:
<?php
global $wpdb;
$meta_key = 'city_field';
$results = $wpdb->get_results(
$wpdb->prepare("SELECT meta_value
FROM $wpdb->usermeta
WHERE meta_key = %s", $meta_key)
);
print_r($results);
print_r($results)返回以下内容:
Array(
[0] => stdClass Object
(
[meta_value] => City 1
)
[1] => stdClass Object
(
[meta_value] => City 2
)
)
这个print_r($results)返回一个包含数据的对象数组,其中city_field是自定义字段的名称,我需要meta_value(City 1,City 2),这样我就可以使用下面的代码循环并显示结果:
if (!empty($results)) {
echo "<select name='cidade' class='options'>";
foreach ($results as $result) {
$city = $result->meta_value;
echo '<option value="' . $city . '"></option>';
}
echo "</select>";
}
?>
问题是:这段代码会返回一个警告,告诉你我正在试图访问一个对象数组中的数据。
我已经尝试过使用extract(get_object_vars()),但它不起作用,现在我不知道如何分离数组/对象,以便使用存储在表中的字符串。
1条答案
按热度按时间brccelvz1#
Results是一个对象数组,而您试图直接访问对象的 meta_value属性,而不是先访问对象本身。