从 OT Scroller 中的空值创建默认对象

Creating default object from empty value in OT Scroller

我的 Joomla 网站上的警告有问题。更准确地说 "Warning: Creating default object from empty value in /public_html/modules/mod_ot_scroller/helper.php on line 40"

这是整个 helper.php 文件:

<?php

defined('_JEXEC') or die;

class modOTScrollerHelper
{
  function getImages(&$params, $folder, $type)
  {
    $files  = array();
    $images  = array();

$dir = JPATH_BASE.DS.$folder;

// check if directory exists
if (is_dir($dir))
{
  if ($handle = opendir($dir)) {
    while (false !== ($file = readdir($handle))) {
      if ($file != '.' && $file != '..' && $file != 'CVS' && $file != 'index.html' && $file != 'Thumbs.db') {
        $files[] = $file;
      }
    }
  }
  closedir($handle);

  foreach($type as $tp){
    $tp=trim($tp);
    $i = 0;
    foreach ($files as $img){
      if (!is_dir($dir .DS. $img))
      {
        if (preg_match("#$tp#i", $img)) {
          $images[$i]->name   = $img;
          $images[$i]->folder  = $folder;
          ++$i;
        }
      }
    }
  }

}

return $images;


}

  function getFolder(&$params)
  {
    $folder   = $params->get( 'folder' );

    $LiveSite   = JURI::base();

    // if folder includes livesite info, remove
    if ( JString::strpos($folder, $LiveSite) === 0 ) {
      $folder = str_replace( $LiveSite, '', $folder );
    }
    // if folder includes absolute path, remove
    if ( JString::strpos($folder, JPATH_SITE) === 0 ) {
      $folder= str_replace( JPATH_BASE, '', $folder );
    }
    $folder = str_replace('\',DS,$folder);
    $folder = str_replace('/',DS,$folder);

    return $folder;
  }
}
?>

整个网站运行良好,图像显示正确。

我该怎么做才能摆脱它?

是的,这是一个警告,因为您没有指定 $images[$i] 应该是什么。如果你愿意,使用 $images[$i] = new \stdClass();

初始化它