Php 定义和调用自定义函数

Php 定义和调用自定义函数,php,Php,我有一段完美的代码: $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select(array($db->quoteName('date'))); $query->from($db->quoteName('#__webfoot_minutes_and_agendas')); $query->order('date DESC'); $db->setQuery($query);

我有一段完美的代码:

$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query->select(array($db->quoteName('date')));
$query->from($db->quoteName('#__webfoot_minutes_and_agendas'));
$query->order('date DESC'); 
$db->setQuery($query);
$results = $db->loadObjectList();
在我尝试将其分配给函数之前:

function call_db() {
    $db = JFactory::getDbo();
    $query = $db->getQuery(true);
    $query->select(array($db->quoteName('date')));
    $query->from($db->quoteName('#__webfoot_minutes_and_agendas'));
    $query->order('date DESC'); 
    $db->setQuery($query);
    $results = $db->loadObjectList();   

    return $results;
}
当我尝试调用函数时,它会中断,我得到的$results出现错误,“为foreach()提供的参数无效…”

call_db();
foreach($results作为$result){
$dateArr=分解('-',$result->date);
如果(!在数组中($dateArr[0],$ready_回声)){
回音“
  • ”; $count++; } $ready_回声[]=$dateArr[0]; }

    有人对我如何理顺这种语法有什么建议吗?

    您必须将函数的结果指定给变量

    $results = call_db();
    

    您必须将函数的结果指定给变量

    $results = call_db();
    

    您必须将函数的结果指定给变量

    $results = call_db();
    

    您必须将函数的结果指定给变量

    $results = call_db();
    

    您尚未将call_db()的返回值分配给任何对象。您必须首先将其分配给
    $results

    $results = call_db();
    

    然后,最好检查
    $results
    是否是一个数组。请参见您没有将call\u db()的返回值分配给任何对象。您必须首先将其分配给
    $results

    $results = call_db();
    

    然后,最好检查
    $results
    是否是一个数组。请参见您没有将call\u db()的返回值分配给任何对象。您必须首先将其分配给
    $results

    $results = call_db();
    

    然后,最好检查
    $results
    是否是一个数组。请参见您没有将call\u db()的返回值分配给任何对象。您必须首先将其分配给
    $results

    $results = call_db();
    

    然后,最好检查
    $results
    是否为数组。请参见,尽管它的设计很糟糕:

    foreach (call_db() as $result) { ... }
    

    虽然它的设计很糟糕:

    foreach (call_db() as $result) { ... }
    

    虽然它的设计很糟糕:

    foreach (call_db() as $result) { ... }
    

    虽然它的设计很糟糕:

    foreach (call_db() as $result) { ... }
    


    这是在函数中还是在循环之前?在循环之前。这将替换在循环之前的
    call\u db()
    调用。这是在函数中还是在循环之前?在循环之前。这将替换
    call\u db()
    调用循环之前的调用。这是在函数中还是在循环之前?在循环之前。这将替换循环之前的
    调用\u db()
    调用。这是在函数中还是在循环之前?在循环之前。这将替换
    调用\u db()
    调用循环之前的函数。这是在函数中还是在循环之前?在循环之前。在您现在调用此函数的地方。谢谢,我感谢您的帮助!这是在函数中还是在循环之前?在循环之前。在您现在调用此函数的地方。谢谢,我感谢您的帮助!这是在函数中吗或者在循环之前?在循环之前。在您现在调用此函数的地方。谢谢,我感谢您的帮助!这是在函数中还是在循环之前?在循环之前。在您现在调用此函数的地方。谢谢,我感谢您的帮助!