[[]] Div Dialect Creator
⚙ Show builder
✓ Validate
</> Generate PHP Code
↓ Load
💾 Save
📄 Save an example
☾ Light mode
divengine.org
This tool requires a minimum width of 1200px for correct layout.
Copy this JSON code to a new text file and save it for future loads.
Done
Paste here a valid JSON code preferably a code generated by Div Dialect Creator. The code should be in the way { constant name: 'value', ... } .
Load
Variables
Variable's member delimiter: { DIV_TAG_VAR_MEMBER_DELIMITER }
Replacements
Prefix:{ DIV_TAG_REPLACEMENT_PREFIX }
Suffix:{ DIV_TAG_REPLACEMENT_SUFFIX }
Substring separator:{ DIV_TAG_SUBMATCH_SEPARATOR }
Multi modifiers
Prefix:{ DIV_TAG_MULTI_MODIFIERS_PREFIX }
Operator:{ DIV_TAG_MULTI_MODIFIERS_OPERATOR }
Separator:{ DIV_TAG_MULTI_MODIFIERS_SEPARATOR }
Suffix:{ DIV_TAG_MULTI_MODIFIERS_SUFFIX }
Template variables
Begin:{ DIV_TAG_TPLVAR_BEGIN }
Protector:{ DIV_TAG_TPLVAR_PROTECTOR }
Operator:{ DIV_TAG_TPLVAR_ASSIGN_OPERATOR }
End:{ DIV_TAG_TPLVAR_END }
Data format
Prefix
Separator
Suffix
Dates
{ DIV_TAG_DATE_FORMAT_PREFIX }
{ DIV_TAG_DATE_FORMAT_SEPARATOR }
{ DIV_TAG_DATE_FORMAT_SUFFIX }
Numbers
{ DIV_TAG_NUMBER_FORMAT_PREFIX }
{ DIV_TAG_NUMBER_FORMAT_SEPARATOR }
{ DIV_TAG_NUMBER_FORMAT_SUFFIX }
Capsules
Prefix Suffix
Begin: { DIV_TAG_CAPSULE_BEGIN_PREFIX } { DIV_TAG_CAPSULE_BEGIN_SUFFIX }
End: { DIV_TAG_CAPSULE_END_PREFIX } { DIV_TAG_CAPSULE_END_SUFFIX }
HTML to plain
Begin: { DIV_TAG_TXT_BEGIN }
Width sep. : { DIV_TAG_TXT_WIDTH_SEPARATOR }
End: { DIV_TAG_TXT_END }
Formulas
Begin: { DIV_TAG_FORMULA_BEGIN }
Sep. :{ DIV_TAG_FORMULA_FORMAT_SEPARATOR }
End: { DIV_TAG_FORMULA_END }
Multiple replacements
Prefix Suffix
Begin: { DIV_TAG_MULTI_REPLACEMENT_BEGIN_PREFIX } { DIV_TAG_MULTI_REPLACEMENT_BEGIN_SUFFIX }
End: { DIV_TAG_MULTI_REPLACEMENT_END_PREFIX } { DIV_TAG_MULTI_REPLACEMENT_END_SUFFIX }
Simple blocks
Begin End
Ignored parts: { DIV_TAG_IGNORE_BEGIN } { DIV_TAG_IGNORE_END }
Comments: { DIV_TAG_COMMENT_BEGIN } { DIV_TAG_COMMENT_END }
Strip: { DIV_TAG_STRIP_BEGIN } { DIV_TAG_STRIP_END }
Friendly tags: { DIV_TAG_FRIENDLY_BEGIN } { DIV_TAG_FRIENDLY_END }
Macros: { DIV_TAG_MACRO_BEGIN } { DIV_TAG_MACRO_END }
Loops
Prefix Suffix
Begin: { DIV_TAG_LOOP_BEGIN_PREFIX } { DIV_TAG_LOOP_BEGIN_SUFFIX }
End: { DIV_TAG_LOOP_END_PREFIX } { DIV_TAG_LOOP_END_SUFFIX }
Empty tag: { DIV_TAG_EMPTY }
Break tag: { DIV_TAG_BREAK }
Variable separator: { DIV_TAG_LOOP_VAR_SEPARATOR }
Aggregate functions
Count: { DIV_TAG_AGGREGATE_FUNCTION_COUNT } Max: { DIV_TAG_AGGREGATE_FUNCTION_MAX }
Sum: { DIV_TAG_AGGREGATE_FUNCTION_SUM } Min: { DIV_TAG_AGGREGATE_FUNCTION_MIN }
Average: { DIV_TAG_AGGREGATE_FUNCTION_AVG }
Function separator: { DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }
Property separator: { DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }
Content's tags
Teaser break: { DIV_TAG_TEASER_BREAK }
Custom sub-parsers
Prefix Suffix
Begin: { DIV_TAG_SUBPARSER_BEGIN_PREFIX } { DIV_TAG_SUBPARSER_BEGIN_SUFFIX }
End: { DIV_TAG_SUBPARSER_END_PREFIX } { DIV_TAG_SUBPARSER_END_SUFFIX }
Rigid blocks:
Prefix Suffix
Default replacement { DIV_TAG_DEFAULT_REPLACEMENT_BEGIN } { DIV_TAG_DEFAULT_REPLACEMENT_END }
Includes { DIV_TAG_INCLUDE_BEGIN } { DIV_TAG_INCLUDE_END }
Pre-processed { DIV_TAG_PREPROCESSED_BEGIN } { DIV_TAG_PREPROCESSED_END }
Locations { DIV_TAG_LOCATION_BEGIN } { DIV_TAG_LOCATION_END }
Iterations
Begin prefix:{ DIV_TAG_ITERATION_BEGIN_PREFIX }
Arguments's separator: { DIV_TAG_ITERATION_PARAM_SEPARATOR }
Suffix: { DIV_TAG_ITERATION_BEGIN_SUFFIX }
End:{ DIV_TAG_ITERATION_END }
Conditional's parts
TRUE parts
Prefix Suffix
Begin: { DIV_TAG_CONDITIONAL_TRUE_BEGIN_PREFIX } { DIV_TAG_CONDITIONAL_TRUE_BEGIN_SUFFIX }
End: { DIV_TAG_CONDITIONAL_TRUE_END_PREFIX } { DIV_TAG_CONDITIONAL_TRUE_END_SUFFIX }
FALSE parts
Prefix Suffix
Begin: { DIV_TAG_CONDITIONAL_FALSE_BEGIN_PREFIX } { DIV_TAG_CONDITIONAL_FALSE_BEGIN_SUFFIX }
End: { DIV_TAG_CONDITIONAL_FALSE_END_PREFIX } { DIV_TAG_CONDITIONAL_FALSE_END_SUFFIX }
Variable's modifiers
Simple replacement: { DIV_TAG_MODIFIER_SIMPLE }
Format (sprinf): { DIV_TAG_MODIFIER_FORMAT }
Capitalize first: { DIV_TAG_MODIFIER_CAPITALIZE_FIRST }
Capitalize words: { DIV_TAG_MODIFIER_CAPITALIZE_WORDS }
Upper case: { DIV_TAG_MODIFIER_UPPERCASE }
Lower case: { DIV_TAG_MODIFIER_LOWERCASE }
String's length: { DIV_TAG_MODIFIER_LENGTH }
Count words: { DIV_TAG_MODIFIER_COUNT_WORDS }
Count sentences: { DIV_TAG_MODIFIER_COUNT_SENTENCES }
Count paragraphs: { DIV_TAG_MODIFIER_COUNT_PARAGRAPHS }
URL encode: { DIV_TAG_MODIFIER_ENCODE_URL }
Raw URL encode: { DIV_TAG_MODIFIER_ENCODE_RAW_URL }
JSON encode: { DIV_TAG_MODIFIER_ENCODE_JSON }
HTML entities: { DIV_TAG_MODIFIER_HTML_ENTITIES }
New line to BR: { DIV_TAG_MODIFIER_NL2BR }
Truncate: { DIV_TAG_MODIFIER_TRUNCATE }
Wordwrap: { DIV_TAG_MODIFIER_WORDWRAP }
Substring: { DIV_TAG_MODIFIER_SUBSTRING_SEPARATOR }
Escape quotes: { DIV_TAG_MODIFIER_SINGLE_QUOTES }
Javascript code: { DIV_TAG_MODIFIER_JS }
Special replacements
New line (\n): { DIV_TAG_SPECIAL_REPLACE_NEW_LINE }
Car return (\r): { DIV_TAG_SPECIAL_REPLACE_CAR_RETURN }
Horizontal tab {\t}: { DIV_TAG_SPECIAL_REPLACE_HORIZONTAL_TAB }
Vertical tab {\v}: { DIV_TAG_SPECIAL_REPLACE_VERTICAL_TAB }
Next page (\f): { DIV_TAG_SPECIAL_REPLACE_NEXT_PAGE }
Dollar symbol: { DIV_TAG_SPECIAL_REPLACE_DOLLAR_SYMBOL }
Location's contents
Prefix Suffix
Begin: { DIV_TAG_LOCATION_CONTENT_BEGIN_PREFIX } { DIV_TAG_LOCATION_CONTENT_BEGIN_SUFFIX }
End: { DIV_TAG_LOCATION_CONTENT_END_PREFIX } { DIV_TAG_LOCATION_CONTENT_END_SUFFIX }
Conditions
Begin prefix: { DIV_TAG_CONDITIONS_BEGIN_PREFIX }
Suffix:{ DIV_TAG_CONDITIONS_BEGIN_SUFFIX }
End: { DIV_TAG_CONDITIONS_END }
Else tag: { DIV_TAG_ELSE }
Variables
{ DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }person{ DIV_TAG_VAR_MEMBER_DELIMITER }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Replacements
{ DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Multi-modifiers
{ DIV_TAG_MULTI_MODIFIERS_PREFIX }name{ DIV_TAG_MULTI_MODIFIERS_OPERATOR }{ DIV_TAG_MODIFIER_UPPERCASE }{ DIV_TAG_MULTI_MODIFIERS_SEPARATOR }{ DIV_TAG_MODIFIER_LOWERCASE }{ DIV_TAG_MULTI_MODIFIERS_SUFFIX }
Template vars
{ DIV_TAG_TPLVAR_BEGIN } { DIV_TAG_TPLVAR_PROTECTOR }products{ DIV_TAG_TPLVAR_ASSIGN_OPERATOR } [
{name: "Potato", price: 20},
{name: "Banana", price: 10}
]{ DIV_TAG_TPLVAR_END }
Data format
Dates: { DIV_TAG_DATE_FORMAT_PREFIX }div.now{ DIV_TAG_DATE_FORMAT_SEPARATOR }Y-m-d{ DIV_TAG_DATE_FORMAT_SUFFIX }
Numbers: { DIV_TAG_NUMBER_FORMAT_PREFIX }price{ DIV_TAG_NUMBER_FORMAT_SEPARATOR }2.,{ DIV_TAG_NUMBER_FORMAT_SUFFIX }
Variable's modifiers
Simple: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Capitalize first: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_CAPITALIZE_FIRST }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Capitalize words: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_CAPITALIZE_WORDS }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Upper case: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_UPPERCASE }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Lower case: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_LOWERCASE }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Length: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_LENGTH }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Words: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_COUNT_WORDS }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Sentences: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_COUNT_SENTENCES }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Paragraphs: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_COUNT_PARAGRAPHS }name{ DIV_TAG_REPLACEMENT_SUFFIX }
URL encode: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_ENCODE_URL }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Raw URL encode: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_ENCODE_RAW_URL }name{ DIV_TAG_REPLACEMENT_SUFFIX }
JSON encode: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_ENCODE_JSON }name{ DIV_TAG_REPLACEMENT_SUFFIX }
HTML entities: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_HTML_ENTITIES }name{ DIV_TAG_REPLACEMENT_SUFFIX }
New lines: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_NL2BR }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Truncate/Teaser: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_SUBMATCH_SEPARATOR }{ DIV_TAG_MODIFIER_TRUNCATE }100{ DIV_TAG_REPLACEMENT_SUFFIX }
Word wrap: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_SUBMATCH_SEPARATOR }{ DIV_TAG_MODIFIER_WORDWRAP }100{ DIV_TAG_REPLACEMENT_SUFFIX }
Substring: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_SUBMATCH_SEPARATOR }1{ DIV_TAG_MODIFIER_SUBSTRING_SEPARATOR }2{ DIV_TAG_REPLACEMENT_SUFFIX }
Single quotes: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SINGLE_QUOTES }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Javascript: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_JS }name{ DIV_TAG_REPLACEMENT_SUFFIX }
Format string: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_SUBMATCH_SEPARATOR }{ DIV_TAG_MODIFIER_FORMAT }.2f{ DIV_TAG_REPLACEMENT_SUFFIX }
Aggregate functions
Count: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_AGGREGATE_FUNCTION_COUNT }{ DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }products{ DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }price{ DIV_TAG_REPLACEMENT_SUFFIX }
Maximum: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_AGGREGATE_FUNCTION_MAX }{ DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }products{ DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }price{ DIV_TAG_REPLACEMENT_SUFFIX }
Minimum: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_AGGREGATE_FUNCTION_MIN }{ DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }products{ DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }price{ DIV_TAG_REPLACEMENT_SUFFIX }
Average: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_AGGREGATE_FUNCTION_AVG }{ DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }products{ DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }price{ DIV_TAG_REPLACEMENT_SUFFIX }
Sum: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_AGGREGATE_FUNCTION_SUM }{ DIV_TAG_AGGREGATE_FUNCTION_SEPARATOR }products{ DIV_TAG_AGGREGATE_FUNCTION_PROPERTY_SEPARATOR }price{ DIV_TAG_REPLACEMENT_SUFFIX }
Capsules
{ DIV_TAG_CAPSULE_BEGIN_PREFIX }entity{ DIV_TAG_CAPSULE_BEGIN_SUFFIX }
... some code here ...
{ DIV_TAG_CAPSULE_END_PREFIX }entity{ DIV_TAG_CAPSULE_END_SUFFIX }
Content's tags
Teaser break:
<p>Lorem ipsum dolor sit amet, { DIV_TAG_TEASER_BREAK } Excepteur sint ...</p>
Convert next HTML into text
{ DIV_TAG_TXT_BEGIN } 150 { DIV_TAG_TXT_WIDTH_SEPARATOR }
<p>Hello World</p>
{ DIV_TAG_TXT_END }
Custom subparsers
{ DIV_TAG_SUBPARSER_BEGIN_PREFIX }myparser{ DIV_TAG_SUBPARSER_BEGIN_SUFFIX }
... some code here ...
{ DIV_TAG_SUBPARSER_END_PREFIX }myparser{ DIV_TAG_SUBPARSER_END_SUFFIX }
Multiple replacements
{ DIV_TAG_MULTI_REPLACEMENT_BEGIN_PREFIX }replaceall{ DIV_TAG_MULTI_REPLACEMENT_BEGIN_SUFFIX }
... some code to replace their parts ...
{ DIV_TAG_MULTI_REPLACEMENT_END_PREFIX }replaceall{ DIV_TAG_MULTI_REPLACEMENT_END_SUFFIX }
Formulas
{ DIV_TAG_FORMULA_BEGIN } 1 + 2 + 3 { DIV_TAG_FORMULA_FORMAT_SEPARATOR } 2,. { DIV_TAG_FORMULA_END }
Simple blocks
Ignore:
{ DIV_TAG_IGNORE_BEGIN }
... some ignored code here ...
{ DIV_TAG_IGNORE_END }
Comments:
{ DIV_TAG_COMMENT_BEGIN }
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
tempor incididunt ut labore et dolore magna aliqua { DIV_TAG_COMMENT_END }
Strips:
{ DIV_TAG_STRIP_BEGIN }
... some ugly code here ...
{ DIV_TAG_STRIP_END }
Friendly tags:
{ DIV_TAG_FRIENDLY_BEGIN } { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_REPLACEMENT_SUFFIX } { DIV_TAG_FRIENDLY_END }
Macros:
{ DIV_TAG_MACRO_BEGIN }
// some macro here
$a = 5;
{ DIV_TAG_MACRO_END }
Rigid blocks
Default replacement: { DIV_TAG_DEFAULT_REPLACEMENT_BEGIN } [true, 'YES'] { DIV_TAG_DEFAULT_REPLACEMENT_END }
Includes: { DIV_TAG_INCLUDE_BEGIN }header{ DIV_TAG_INCLUDE_END }
Pre-processed: { DIV_TAG_PREPROCESSED_BEGIN }footer{ DIV_TAG_PREPROCESSED_END }
Locations: { DIV_TAG_LOCATION_BEGIN }header_left{ DIV_TAG_LOCATION_END }
Special replacements
New line (\n): { DIV_TAG_SPECIAL_REPLACE_NEW_LINE }
Car return (\r): { DIV_TAG_SPECIAL_REPLACE_CAR_RETURN }
Horizontal tab {\t}: { DIV_TAG_SPECIAL_REPLACE_HORIZONTAL_TAB }
Vertical tab {\v}: { DIV_TAG_SPECIAL_REPLACE_VERTICAL_TAB }
Next page (\f): { DIV_TAG_SPECIAL_REPLACE_NEXT_PAGE }
Dollar symbol: { DIV_TAG_SPECIAL_REPLACE_DOLLAR_SYMBOL }
Location's contents
{ DIV_TAG_LOCATION_CONTENT_BEGIN_PREFIX }header_left{ DIV_TAG_LOCATION_CONTENT_BEGIN_SUFFIX }
<img src="logo.png">
{ DIV_TAG_LOCATION_CONTENT_END_PREFIX }header_left{ DIV_TAG_LOCATION_CONTENT_END_SUFFIX }
Loops
{ DIV_TAG_LOOP_BEGIN_PREFIX }products{ DIV_TAG_LOOP_BEGIN_SUFFIX }
Name: { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }name{ DIV_TAG_REPLACEMENT_SUFFIX }
{ DIV_TAG_EMPTY }
No products
{ DIV_TAG_LOOP_END_PREFIX }products{ DIV_TAG_LOOP_END_SUFFIX }
Iterations
{ DIV_TAG_ITERATION_BEGIN_PREFIX }1{ DIV_TAG_ITERATION_PARAM_SEPARATOR }10{ DIV_TAG_ITERATION_PARAM_SEPARATOR }i{ DIV_TAG_ITERATION_PARAM_SEPARATOR }2{ DIV_TAG_ITERATION_BEGIN_SUFFIX }
{ DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }i{ DIV_TAG_REPLACEMENT_SUFFIX }
{ DIV_TAG_ITERATION_END }
Conditional's parts
TRUE parts
{ DIV_TAG_CONDITIONAL_TRUE_BEGIN_PREFIX }show{ DIV_TAG_CONDITIONAL_TRUE_BEGIN_SUFFIX }
Show something...
{ DIV_TAG_ELSE }
Show another something...
{ DIV_TAG_CONDITIONAL_TRUE_END_PREFIX }show{ DIV_TAG_CONDITIONAL_TRUE_END_SUFFIX }
FALSE parts
{ DIV_TAG_CONDITIONAL_FALSE_BEGIN_PREFIX }show{ DIV_TAG_CONDITIONAL_FALSE_BEGIN_SUFFIX }
Show another something...
{ DIV_TAG_ELSE }
Show something...
{ DIV_TAG_CONDITIONAL_FALSE_END_PREFIX }show{ DIV_TAG_CONDITIONAL_FALSE_END_SUFFIX }
Conditions
{ DIV_TAG_CONDITIONS_BEGIN_PREFIX } { DIV_TAG_REPLACEMENT_PREFIX }{ DIV_TAG_MODIFIER_SIMPLE }number{ DIV_TAG_REPLACEMENT_SUFFIX } > 5 { DIV_TAG_CONDITIONS_BEGIN_SUFFIX }
The number is bigger
than five
{ DIV_TAG_ELSE }
The number is not bigger
than five
{ DIV_TAG_CONDITIONS_END }