本文整理汇总了PHP中Converter::phpEval方法的典型用法代码示例。如果您正苦于以下问题:PHP Converter::phpEval方法的具体用法?PHP Converter::phpEval怎么用?PHP Converter::phpEval使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Converter
的用法示例。
在下文中一共展示了Converter::phpEval方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: do_shortcode_php
function do_shortcode_php($content)
{
if (strpos($content, '{{php}}') === false) {
return $content;
}
global $config, $speak;
return preg_replace_callback('#(?<!`)\\{\\{php\\}\\}(?!`)([\\s\\S]*?)(?<!`)\\{\\{\\/php\\}\\}(?!`)#', function ($matches) use($config, $speak) {
return Converter::phpEval($matches[1], array('config' => $config, 'speak' => $speak));
}, $content);
}
示例2: preg_replace_callback
$key = preg_replace_callback('#%\\\\\\[(.*?)\\\\\\]#', function ($matches) {
return '(' . str_replace(',', '|', $matches[1]) . ')';
}, $key);
}
// %s: accept any values without line breaks
// %S: accept any values with/without line breaks
// %i: accept integer numbers
// %f: accept float numbers
// %b: accept boolean values
$key = str_replace(array('%s', '%S', '%i', '%f', '%b'), array('(.+?)', '([\\s\\S]+?)', '(\\d+?)', '((?:\\d*\\.)?\\d+?)', '\\b(TRUE|FALSE|YES|NO|ON|OFF|true|false|yes|no|on|off|1|0)\\b'), $key);
$value = str_replace(array('\\n', '\\r', '\\t'), array("\n", "\r", "\t"), $value);
$content = preg_replace('#(?<!`)' . $key . '(?!`)#', $value, $content);
}
if (strpos($content, '{{php}}') !== false) {
$content = preg_replace_callback('#(?<!`)\\{\\{php\\}\\}(?!`)([\\s\\S]*?)(?<!`)\\{\\{\\/php\\}\\}(?!`)#', function ($matches) {
return Converter::phpEval($matches[1]);
}, $content);
}
return $content;
}, 20);
// YOU ARE HERE! -- You can specify your own shortcode priority to be greater
// than the default shortcode file priority, but lesser than the shortcode
// deactivation priority by determining the shortcode priority between 20 - 30
Filter::add('shortcode', function ($content) {
if (strpos($content, '`{{') === false) {
return $content;
}
return str_replace(array('`{{', '}}`'), array('{{', '}}'), $content);
}, 30);
/**
* Other(s)