/**
  * Emulation of "if ... else ..."
  *
  * The `$if_false` and `$is_true` parameters can be a callable closure that will be evaluated
  * passing it the `$condition`and the `$args` array as argument.
  *
  * @param bool $condition A condition to test
  * @param string/callable $if_true A string or a closure to use if `$condition` is `true`
  * @param string/callable $if_false A string or a closure to use if `$condition` is `false`
  * @param array $args An optional array of arguments to pass to the true or false closure
  * @param bool $return Return/Echo flag (default is to echo result)
  * @return mixed The result of the `_echo` function (string or bool)
  * @see _echo()
  * @see TemplateEngine\TemplateEngine::__closurable()
  */
 function _if($condition, $if_true = '', $if_false = '', $args = null, $return = false)
 {
     @array_unshift(_array($args), $condition);
     return _echo(TemplateEngine::__closurable(true === $condition ? $if_true : $if_false, _array($args)), $return);
 }