我在服务器日志上收到了一大堆(foreach())警告。他们可能通过sql连接泄漏导致我的数据库上出现sql超时吗?
我不完全确定如何解决问题,但我读到我需要添加这段代码:
if (is_array($values) || is_object($values))
{
foreach ($values as $value)
{
...
}
}
...进入我的.php,但不知道在哪里添加它或为什么?抱歉,诺布再次来到这里。
以下是我的代码部分:PHP警告:
为foreach()提供的参数无效 /hermes/bosnacweb03/bosnacweb03aa/b1245/ipg.tinsflowershop/panga/classes/ImageType.php 在第148行
(第148行开始 - foreach($结果为$ result){)
/**
* Finds image type definition by name and type
* @param string $name
* @param string $type
*/
public static function getByNameNType($name, $type = null, $order = 0)
{
static $is_passed = false;
if (!isset(self::$images_types_name_cache[$name.'_'.$type.'_'.$order]) && !$is_passed) {
$results = Db::getInstance()->ExecuteS('SELECT * FROM `'._DB_PREFIX_.'image_type`');
$types = array('products', 'categories', 'manufacturers', 'suppliers', 'scenes', 'stores');
$total = count($types);
foreach ($results as $result) {
foreach ($result as $value) {
for ($i = 0; $i < $total; ++$i) {
self::$images_types_name_cache[$result['name'].'_'.$types[$i].'_'.$value] = $result;
}
}
}
$is_passed = true;
}
我认为我日志上的所有警告都是同一个问题?例如:
PHP警告:为foreach()提供的参数无效 /hermes/bosnacweb03/bosnacweb03aa/b1245/ipg.tinsflowershop/panga/classes/Category.php 在第594行