fork(3) download
  1. <?php
  2. $value = '<input value="{{ if_language:indonesia }} do_something {{ end_if }}" />' .
  3. '{{ if_language:indonesia }} do_something {{ end_if }}' .
  4. '<SELECT>{{ if_language:indonesia }} do_something {{ end_if }}</sElecCT>' .
  5. '...<textarea>{{ if_language:indonesia }} do_something {{ end_if }}</textarea>';
  6.  
  7. $language = 'indonesia';
  8.  
  9. $pattern = array();
  10. $pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ elif_language:.*?\{\{ end_if }}/s";
  11. $pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ else \}\}.*?\{\{ end_if }}/s";
  12. $pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ end_if }}/s";
  13. $pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ elif_language:.*?\{\{ end_if }}/s";
  14. $pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ else \}\}.*?\{\{ end_if }}/s";
  15. $pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ end_if }}/s";
  16. $pattern[] = "/\{\{ if_language:.*?\{\{ else \}\}(.*?)\{\{ end_if }}/s";
  17. $replacement = '$1';
  18.  
  19. foreach ($pattern as &$p) {
  20. $p = preg_replace("/^\//", "/(?![^<>]*>|(?:[^>]*<\/(?:[tT][eE][xX][tT][aA][rR][eE][aA]|[sS][eE][lL][eE][cC][tT])[^<>]*>))", $p);
  21. }
  22.  
  23. $value = preg_replace($pattern, $replacement, $value);
  24. print($value);
  25. ?>
Success #stdin #stdout 0.02s 13112KB
stdin
Standard input is empty
stdout
<input value="{{ if_language:indonesia }} do_something {{ end_if }}" /> do_something <SELECT> do_something </sElecCT>...<textarea>{{ if_language:indonesia }} do_something {{ end_if }}</textarea>