<?php
$value = '<input value="{{ if_language:indonesia }} do_something {{ end_if }}" />' .
         '{{ if_language:indonesia }} do_something {{ end_if }}' .
         '<SELECT>{{ if_language:indonesia }} do_something {{ end_if }}</sElecCT>' .
         '...<textarea>{{ if_language:indonesia }} do_something {{ end_if }}</textarea>';

$language = 'indonesia';

$pattern = array();
$pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ elif_language:.*?\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ else \}\}.*?\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:$language \}\}(.*?)\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ elif_language:.*?\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ else \}\}.*?\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:.*?\{\{ elif_language:$language \}\}(.*?)\{\{ end_if }}/s";
$pattern[] = "/\{\{ if_language:.*?\{\{ else \}\}(.*?)\{\{ end_if }}/s"; 
$replacement = '$1';

foreach ($pattern as &$p) {
  $p = preg_replace("/^\//", "/(?![^<>]*>|(?:[^>]*<\/(?:[tT][eE][xX][tT][aA][rR][eE][aA]|[sS][eE][lL][eE][cC][tT])[^<>]*>))", $p);
}

$value = preg_replace($pattern, $replacement, $value);
print($value);
?>