added unless structure to blade.

This commit is contained in:
Taylor Otwell
2012-04-10 11:33:55 -05:00
parent fda19731c5
commit f7b1a72f3c
3 changed files with 40 additions and 0 deletions

View File

@@ -16,6 +16,8 @@ class Blade {
'structure_openings',
'structure_closings',
'else',
'unless',
'endunless',
'includes',
'render_each',
'render',
@@ -254,6 +256,30 @@ class Blade {
return preg_replace('/(\s*)@(else)(\s*)/', '$1<?php $2: ?>$3', $value);
}
/**
* Rewrites Blade "unless" statements into valid PHP.
*
* @param string $value
* @return string
*/
protected static function compile_unless($value)
{
$pattern = '/(\s*)@unless(\s*\(.*\))/';
return preg_replace($pattern, '$1<?php if( ! ($2)): ?>', $value);
}
/**
* Rewrites Blade "unless" endings into valid PHP.
*
* @param string $value
* @return string
*/
protected static function compile_endunless($value)
{
return str_replace('@endunless', '<?php endif; ?>', $value);
}
/**
* Rewrites Blade @include statements into valid PHP.
*