我一直试图将两个数据库查询合并为一个。现在我终于做到了(是的)。但是有一个问题使我无法完成这项任务。而且我打赌它非常简单,但我似乎无法让它发挥作用。
我已经建立了数据库查询设置并且可以正常运行。
$sql = "SELECT `guid` FROM `pf_posts` WHERE `id` IN (SELECT `meta_value`
FROM `pf_postmeta`
WHERE `meta_key` LIKE '_thumbnail_id'
AND `post_id` = $post_id)";
$result = mysqli_query($wp_database, $sql);
$images = mysqli_fetch_all($result, MYSQLI_ASSOC);
mysqli_free_result($result);
foreach ($images as $image): ?>
<div>
<?php print_r($image); ?>
</div>
<?php endforeach; ?>
这让我了解了print_r
中的正确价值但是我得到了这个:
Array ( [guid] => http://mydomein.nl/wp-content/images-001.jpg )
但我想从print_r中删除Array ( [guid] =>
和最后)
部分。
我已经看过字符串替换,但我不知道如何设置正确。我希望能够echo
它。我从这里获得了数据库的代码:
How can I retrieve posts with featured images from a WordPress database if WordPress is no longer installed? [closed]
答案 0 :(得分:4)
print_r
将打印人类可读的参数表示。在您的情况下,$image
是array
,其中包含一个元素,键&#34; guid&#34;和价值&#34; http://mydomein.nl/wp-content/images-001.jpg&#34;。
所以,你需要做的只是echo
你想要的元素:
<?php
foreach ($images as $image): ?>
<div>
<?php echo $image["guid"] ?>
</div>
<?php endforeach; ?>
答案 1 :(得分:0)
你可以试试这个:
<?php print_r($image['guid']); ?>