2013-07-14 22:15:45 +00:00
|
|
|
<?php
|
2023-08-08 00:04:14 +02:00
|
|
|
namespace Smarty\Compile\Modifier;
|
2013-07-14 22:15:45 +00:00
|
|
|
/**
|
|
|
|
|
* Smarty strip modifier plugin
|
2017-11-11 07:11:33 +01:00
|
|
|
* Type: modifier
|
|
|
|
|
* Name: strip
|
2013-07-14 22:15:45 +00:00
|
|
|
* Purpose: Replace all repeated spaces, newlines, tabs
|
2017-11-11 07:11:33 +01:00
|
|
|
* with a single space or supplied replacement string.
|
|
|
|
|
* Example: {$var|strip} {$var|strip:" "}
|
2013-07-14 22:15:45 +00:00
|
|
|
* Date: September 25th, 2002
|
|
|
|
|
*
|
2021-10-13 12:15:17 +02:00
|
|
|
* @link https://www.smarty.net/manual/en/language.modifier.strip.php strip (Smarty online manual)
|
2013-07-14 22:15:45 +00:00
|
|
|
* @author Uwe Tews
|
|
|
|
|
*/
|
2023-08-08 00:04:14 +02:00
|
|
|
|
|
|
|
|
class StripModifierCompiler extends Base {
|
|
|
|
|
|
|
|
|
|
public function compile($params, \Smarty\Compiler\Template $compiler) {
|
|
|
|
|
if (!isset($params[ 1 ])) {
|
|
|
|
|
$params[ 1 ] = "' '";
|
|
|
|
|
}
|
|
|
|
|
return "preg_replace('!\s+!" . \Smarty\Smarty::$_UTF8_MODIFIER . "', {$params[1]},{$params[0]})";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|