我到处搜寻,没有能够找到正确的前进方法。
在我的controller.php中,我有:
<?php $get_listing = function ($id) {
$results = $db->query("SELECT * FROM listings ORDER BY date DESC");
$listings = $results->fetchAll(PDO::FETCH_ASSOC);
} ?>
以上是我从数据库中检索数据的功能。我想根据变量$ id。
检索特定的行现在,在我的ad-details.php中,我有:
<?php foreach(get_listing($id) as $info) {
echo $info["price"]; }
我收到一条错误消息,指出函数get_listing是未定义的,这很奇怪,因为controller.php包含在ad-details.php中
任何想法的家伙?任何帮助都将受到高度赞赏。
答案 0 :(得分:2)
2个错误:
1 - 你忘记了
global $db;
和函数中的return语句。
2 - 如果您使用anonymous functions,则需要使用$ sign调用它们。大概
<?php
foreach($get_listing($id) as $info) {
echo $info["price"];
}
?>
正在运作。
答案 1 :(得分:0)
您已将自己的功能设置为名为$get_listing
的变量,但请使用get_listing
进行调用。
要么像这样声明你的功能。
function get_listing($id)
或者这样称呼它。
$get_listing($id)
答案 2 :(得分:0)
<?php
function get_listing($id)
{
$results = $db->query("SELECT * FROM listings ORDER BY date DESC");
$listings = $results->fetchAll(PDO::FETCH_ASSOC);
}
?>