当前位置: 首页>>代码示例>>PHP>>正文


PHP str::encoding方法代码示例

本文整理汇总了PHP中str::encoding方法的典型用法代码示例。如果您正苦于以下问题:PHP str::encoding方法的具体用法?PHP str::encoding怎么用?PHP str::encoding使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在str的用法示例。


在下文中一共展示了str::encoding方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: function

 * @see  http://shiflett.org/blog/2007/mar/allowing-html-and-preventing-xss
 *
 * @param  Field  $field  The calling Kirby Field instance.
 * @param  array  $tags   List of html tags to allow.
 *
 * @return Field
 */
field::$methods['safeMarkdown'] = function ($field, $tags = null) {
    // Sensible default for user generated contents
    if (!is_array($tags)) {
        $tags = array('a', 'p', 'em', 'strong', 'ul', 'ol', 'li', 'code', 'pre', 'blockquote');
    }
    // Ensure the string is utf-8 encoded to protect against XSS exploits using
    // different encodings.
    $text = $field->value();
    $encoding = str::encoding($text);
    if (strtolower($encoding) !== 'utf-8') {
        $text = str::convert($text, 'UTF-8//IGNORE', $encoding);
    }
    // Strip all raw html tags from the input, but allow them in code blocks
    if (in_array('code', $tags)) {
        $text = preg_replace_callback('/`[^`]+`|`{3}[^`]+`{3}|~{3}[^~]+~{3}/', function ($m) {
            return str_replace(array('<', '>'), array('&lt;', '&gt;'), $m[0]);
        }, $text);
    }
    $text = strip_tags($text);
    // Setup markdown parser
    $parsedown = new Parsedown();
    $parsedown->setBreaksEnabled(true);
    // Parse markdown and escape output. Now it is safe by default.
    $html = $parsedown->text($text);
开发者ID:buditanrim,项目名称:kirby-comments,代码行数:31,代码来源:methods.php


注:本文中的str::encoding方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。