Browse Source

added blade comments and documentation.

Taylor Otwell 12 years ago
parent
commit
7d5b6b3748
3 changed files with 25 additions and 0 deletions
  1. 14 0
      laravel/blade.php
  2. 1 0
      laravel/documentation/changes.md
  3. 10 0
      laravel/documentation/views/templating.md

+ 14 - 0
laravel/blade.php

@@ -9,6 +9,7 @@ class Blade {
 	 */
 	protected static $compilers = array(
 		'layouts',
+		'comments',
 		'echos',
 		'forelse',
 		'empty',
@@ -152,6 +153,19 @@ class Blade {
 		return str_replace(array("('", "')"), '', $matches[1]);
 	}
 
+	/**
+	 * Rewrites Blade comments into PHP comments.
+	 *
+	 * @param  string  $value
+	 * @return string
+	 */
+	protected static function compile_comments($value)
+	{
+		$value = preg_replace('/\{\{--(.+?)(--\}\})?\n/', "<?php // $1 ?>", $value);
+
+		return preg_replace('/\{\{--((.|\s)*?)--\}\}/', "<?php /* $1 */ ?>\n", $value);
+	}
+
 	/**
 	 * Rewrites Blade echo statements into PHP echo statements.
 	 *

+ 1 - 0
laravel/documentation/changes.md

@@ -29,6 +29,7 @@
 - [Added `sync` method to has\_many\_and\_belongs\_to Eloquent relationship](/docs/database/eloquent#sync-method).
 - [Added `save` method to has\_many Eloquent relationship](/docs/database/eloquent#has-many-save).
 - [Added `unless` structure to Blade template engine](/docs/views/templating#blade-unless).
+- [Added Blade comments](/docs/views/templating#blade-comments).
 - Migrated to the Symfony HttpFoundation component for core request / response handling.
 - Fixed the passing of strings into the `Input::except` method.
 - Fixed replacement of optional parameters in `URL::transpose` method.

+ 10 - 0
laravel/documentation/views/templating.md

@@ -118,6 +118,16 @@ Blade makes writing your views pure bliss. To create a blade view, simply name y
 		...
 	<?php endif; ?>
 
+<a name="blade-comments"></a>
+#### Blade comments:
+	
+	@if ($check)
+		{{-- This is a comment --}}
+		...
+	@endif
+
+> **Note:** Blade comments, unlike HTML comments, are not visible in the HTML source.
+
 <a name="blade-layouts"></a>
 ## Blade Layouts