@@ 25-36 (lines=12) @@ | ||
22 | return $value; |
|
23 | } |
|
24 | ||
25 | public function compileRawEchos($value) |
|
26 | { |
|
27 | $pattern = sprintf('/(@)?%s\s*(.+?)\s*%s(\r?\n)?/s', $this->rawTags[0], $this->rawTags[1]); |
|
28 | ||
29 | $callback = function ($matches) { |
|
30 | $whitespace = empty($matches[3]) ? '' : $matches[3]; |
|
31 | ||
32 | // in order to avoid changing the number of lines after compilation |
|
33 | // we override this method to avoid repeating the whitespace at the end. |
|
34 | return $matches[1] ? substr($matches[0], 1) : "<?php echo {$matches[2]}; ?>{$whitespace}"; |
|
35 | }; |
|
36 | ||
37 | return preg_replace_callback($pattern, $callback, $value); |
|
38 | } |
|
39 | ||
@@ 40-54 (lines=15) @@ | ||
37 | return preg_replace_callback($pattern, $callback, $value); |
|
38 | } |
|
39 | ||
40 | public function compileRegularEchos($value) |
|
41 | { |
|
42 | $pattern = sprintf('/(@)?%s\s*(.+?)\s*%s(\r?\n)?/s', $this->contentTags[0], $this->contentTags[1]); |
|
43 | ||
44 | $callback = function ($matches) { |
|
45 | $whitespace = empty($matches[3]) ? '' : $matches[3]; |
|
46 | ||
47 | $wrapped = sprintf($this->echoFormat, $matches[2]); |
|
48 | ||
49 | // in order to avoid changing the number of lines after compilation |
|
50 | // we override this method to avoid repeating the whitespace at the end. |
|
51 | return $matches[1] ? substr($matches[0], 1) : "<?php echo {$wrapped}; ?>{$whitespace}"; |
|
52 | }; |
|
53 | ||
54 | return preg_replace_callback($pattern, $callback, $value); |
|
55 | } |
|
56 | ||
57 | public function compileEscapedEchos($value) |
|
@@ 57-69 (lines=13) @@ | ||
54 | return preg_replace_callback($pattern, $callback, $value); |
|
55 | } |
|
56 | ||
57 | public function compileEscapedEchos($value) |
|
58 | { |
|
59 | $pattern = sprintf('/(@)?%s\s*(.+?)\s*%s(\r?\n)?/s', $this->escapedTags[0], $this->escapedTags[1]); |
|
60 | ||
61 | $callback = function ($matches) { |
|
62 | $whitespace = empty($matches[3]) ? '' : $matches[3]; |
|
63 | ||
64 | // in order to avoid changing the number of lines after compilation |
|
65 | // we override this method to avoid repeating the whitespace at the end. |
|
66 | return $matches[1] ? $matches[0] : "<?php echo e({$matches[2]}); ?>{$whitespace}"; |
|
67 | }; |
|
68 | ||
69 | return preg_replace_callback($pattern, $callback, $value); |
|
70 | } |
|
71 | } |
|
72 |