Subversion-Projekte lars-tiefland.laravel_shop

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
/**
3
 * Smarty plugin
4
 *
5
 * @package    Smarty
6
 * @subpackage PluginsModifierCompiler
7
 */
8
/**
9
 * Smarty default modifier plugin
10
 * Type:     modifier
11
 * Name:     default
12
 * Purpose:  designate default value for empty variables
13
 *
14
 * @link   https://www.smarty.net/manual/en/language.modifier.default.php default (Smarty online manual)
15
 * @author Uwe Tews
16
 *
17
 * @param array $params parameters
18
 *
19
 * @return string with compiled code
20
 */
21
function smarty_modifiercompiler_default($params)
22
{
23
    $output = $params[ 0 ];
24
    if (!isset($params[ 1 ])) {
25
        $params[ 1 ] = "''";
26
    }
27
    array_shift($params);
28
    foreach ($params as $param) {
29
        $output = '(($tmp = ' . $output . ' ?? null)===null||$tmp===\'\' ? ' . $param . ' ?? null : $tmp)';
30
    }
31
    return $output;
32
}