Поддержать Проект

USDT TRC20

TBGKTYDs4yzU17vQbobbUB8epFFtFb6PKh

Обратная связь

[MODX] Guru
  • Информация
  • Разработчикам
    • Теги
    • API
    • DBAPI
    • System Variables
    • MMrules
  • Дополнения
  • Виджеты
  • Уроки
  • Разработчики
  • Готовые примеры
  • Блог
  • Конфиги
  • HTML коды
© [MODX] Guru
  • API

parseText API MODX Evo ✈ Evolution CMS

  • Разработчикам
  • API
  • parseText
Поддержать: USDT TRC20: TBGKTYDs4yzU17vQbobbUB8epFFtFb6PKh
Menu
  • addEventListener
  • changeWebUserPassword
  • clearCache
  • getActiveChildren
  • getAllChildren
  • getCachePath
  • getChildIds
  • getChunk
  • getConfig
  • getDocument
  • getDocumentChildren
  • getDocumentChildrenTVarOutput
  • getDocumentChildrenTVars
  • getDocumentObject
  • getDocuments
  • getFullTableName
  • getKeywords
  • getLoginUserID
  • getLoginUserName
  • getLoginUserType
  • getManagerPath
  • getMETATags
  • getPageInfo
  • getParent
  • getParentIds
  • getPlaceholder
  • getSnippetId
  • getSnippetName
  • getTemplateVar
  • getTemplateVarOutput
  • getTemplateVars
  • getUserData
  • getUserDocGroups
  • getUserInfo
  • getVersionData
  • getWebUserInfo
  • hasPermission
  • insideManager
  • invokeEvent
  • isBackend
  • isFrontend
  • isMemberOfWebGroup
  • logEvent
  • makeList
  • makeUrl
  • mapPath
  • parseChunk
  • parseText
  • parseProperties
  • putChunk
  • regClientCSS
  • regClientHTMLBlock
  • regClientScript
  • regClientStartupHTMLBlock
  • regClientStartupScript
  • removeAllEventListener
  • removeEventListener
  • runSnippet
  • sendAlert
  • setPlaceholder
  • stripTags
  • toPlaceholder
  • toPlaceholders
  • userLoggedIn
  • webAlert
  • sendmail
2909

parseText API MODX Evo ✈ Evolution CMS

Функция для замены плейсхолдеров на значения

string parseText(string $chunkName, array $chunkArr[, string $prefix[, string $suffix]]);

$chunkName - строка содержащая текст с плейсхолдерами

$chunkArr - массив со значениями плейсхолдеров

$prefix - значение начала плейсхолдера. Обычно используется '[+'
по умолчанию: [+

$suffix - значение завершения плейсхолдера. Обычно используется '+]'
по умолчанию: +]


Формат определения значений плейсхолдеров:

Array (
	[name] => saniock.com
	[type] => site 
	[url] => http://saniock.com
)

Это будет соответствовать плейсхолдерам name, type и url, которые при обработке заменяться соответствующими значениями.


Пример:

$text = 'Пример текста с тегами, [+name+] , [+type+], [+url+]';
$txt = $modx->parseText($text, array( 'name' => 'saniock.com', 'type' => 'site', 'url' => 'http://saniock.com' ), '[+', '+]' );
//вернет: 
Пример текста с тегами, saniock.com , site, http://saniock.com

Исходный код функции

/**
 * parseText
 * @version 1.0 (2013-10-17)
 * 
 * @desc Replaces placeholders in text with required values.
 * 
 * @param $chunk {string} - String to parse. @required
 * @param $chunkArr {array} - Array of values. Key – placeholder name, value – value. @required
 * @param $prefix {string} - Placeholders prefix. Default: '[+'.
 * @param $suffix {string} - Placeholders suffix. Default: '+]'.
 * 
 * @return {string} - Parsed text.
 */
function parseText($chunk, $chunkArr, $prefix = '[+', $suffix = '+]'){
	if (!is_array($chunkArr)){
		return $chunk;
	}
	foreach ($chunkArr as $key => $value){
		$chunk = str_replace($prefix.$key.$suffix, $value, $chunk);
	}
	return $chunk;
}