2016-11-09 14 views
0

Я пытаюсь сделать крючок, и у меня проблема с функцией foreach.WHMCS Hook - ошибка foreach

У меня возникла следующая ошибка, но я использую функцию smarty foreach от http://docs.whmcs.com/Email_Templates.

// Call WHMCS API - send admin email 
$command = "sendadminemail"; 
$adminuser = "admin"; 
$values["customsubject"] = "Daily Cron Report"; 
$values["custommessage"] = "Domains Report<br>"; 
$values["custommessage"] .= "--------------------<br>"; 
$values["custommessage"] .= "{$active_domains_count} Active Domains<br>{$expired_domains_count} Expired Domains<br>"; 
$values["custommessage"] .= "--------------------<br>"; 
$values["custommessage"] .= "Expired Domains"; 
$values["custommessage"] .= "{foreach from=$expired_domains item=expireddomains}-{$expireddomains.domain}<br>{/foreach}"; 
$values["customvars"] = array("active_domains_count" => $active_domains_count, "expired_domains_count" => $expired_domains_count, "expired_domains" => $expired_domains); 
$values["type"] = "system"; 

$results = localAPI($command, $values, $adminuser); 

Parse error: syntax error, unexpected '.', expecting '}' in /includes/hooks/dailycron.php on line 24

Любые предложения? Заранее спасибо

ответ

1

Используйте php -l для отладки sintax-ошибок, ваша проблема была в строке 11, закрыв строку одиночными кавычками вместо двух исправленных.

<?php 
// Call WHMCS API - send admin email 
$command = "sendadminemail"; 
$adminuser = "admin"; 
$values["customsubject"] = "Daily Cron Report"; 
$values["custommessage"] = "Domains Report<br>"; 
$values["custommessage"] .= "--------------------<br>"; 
$values["custommessage"] .= "{$active_domains_count} Active Domains<br>{$expired_domains_count} Expired Domains<br>"; 
$values["custommessage"] .= "--------------------<br>"; 
$values["custommessage"] .= "Expired Domains"; 
$values["custommessage"] .= '{foreach from=$expired_domains item=expireddomains}-{$expireddomains.domain}<br>{/foreach}'; 
$values["customvars"] = array("active_domains_count" => $active_domains_count, "expired_domains_count" => $expired_domains_count, "expired_domains" => $expired_domains); 
$values["type"] = "system"; 

$results = localAPI($command, $values, $adminuser); 
+0

Я исправил это с помощью foreach вне электронного письма HTML. Работает. Smarty foreach не работает –