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


PHP NNText::combinePTags方法代码示例

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


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

示例1: fixHtmlTagStructure

 /**
  * gets attribute from a tag string
  */
 public static function fixHtmlTagStructure(&$string, $remove_surrounding_p_tags = 1)
 {
     if (empty($string)) {
         return;
     }
     // Combine duplicate <p> tags
     NNText::combinePTags($string);
     // Move div nested inside <p> tags outside of it
     NNText::moveDivBlocksOutsidePBlocks($string);
     // Remove duplicate ending </p> tags
     NNText::removeDuplicateTags($string, '/p');
     if ($remove_surrounding_p_tags) {
         // Remove surrounding <p></p> blocks
         NNText::removeSurroundingPBlocks($string);
     }
 }
开发者ID:naka211,项目名称:kkvn,代码行数:19,代码来源:text.php

示例2: cleanSurroundingTags

 public static function cleanSurroundingTags($tags, $elements = array('p', 'span'))
 {
     require_once __DIR__ . '/text.php';
     $breaks = '(?:(?:<br ?/?>|:\\|:)\\s*)*';
     $keys = array_keys($tags);
     $string = implode(':|:', $tags);
     // Remove empty tags
     while (preg_match('#<(' . implode('|', $elements) . ')(?: [^>]*)?>\\s*(' . $breaks . ')<\\/\\1>\\s*#s', $string, $match)) {
         $string = str_replace($match['0'], $match['2'], $string);
     }
     // Remove paragraphs around block elements
     $block_elements = array('p', 'div', 'table', 'tr', 'td', 'thead', 'tfoot', 'h[1-6]');
     $block_elements = '(' . implode('|', $block_elements) . ')';
     while (preg_match('#(<p(?: [^>]*)?>)(\\s*' . $breaks . ')(<' . $block_elements . '(?: [^>]*)?>)#s', $string, $match)) {
         if ($match['4'] == 'p') {
             $match['3'] = $match['1'] . $match['3'];
             NNText::combinePTags($match['3']);
         }
         $string = str_replace($match['0'], $match['2'] . $match['3'], $string);
     }
     while (preg_match('#(</' . $block_elements . '>\\s*' . $breaks . ')</p>#s', $string, $match)) {
         $string = str_replace($match['0'], $match['1'], $string);
     }
     $tags = explode(':|:', $string);
     $new_tags = array();
     foreach ($tags as $key => $val) {
         $key = isset($keys[$key]) ? $keys[$key] : $key;
         $new_tags[$key] = $val;
     }
     return $new_tags;
 }
开发者ID:grlf,项目名称:eyedock,代码行数:31,代码来源:tags.php


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