links.php

来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· PHP 代码 · 共 86 行

PHP
86
字号
<?php/* vim: set expandtab tabstop=4 shiftwidth=4: */// +----------------------------------------------------------------------+// | PHP Version 4                                                        |// +----------------------------------------------------------------------+// | Copyright (c) 1997-2003 The PHP Group                                |// +----------------------------------------------------------------------+// | This source file is subject to version 2.02 of the PHP license,      |// | that is bundled with this package in the file LICENSE, and is        |// | available at through the world-wide-web at                           |// | http://www.php.net/license/2_02.txt.                                 |// | If you did not receive a copy of the PHP license and are unable to   |// | obtain it through the world-wide-web, please send a note to          |// | license@php.net so we can mail you a copy immediately.               |// +----------------------------------------------------------------------+// | Author: Stijn de Reede <sjr@gmx.co.uk>                               |// +----------------------------------------------------------------------+//// $Id: Links.php,v 1.5 2004/02/05 16:39:45 sjr Exp $///*** @package  HTML_BBCodeParser* @author   Stijn de Reede  <sjr@gmx.co.uk>*/require_once('HTML/BBCodeParser.php');class HTML_BBCodeParser_Filter_Links extends HTML_BBCodeParser{    /**    * An array of tags parsed by the engine    *    * @access   private    * @var      array    */    var $_definedTags = array(  'url' => array( 'htmlopen'  => 'a',                                                'htmlclose' => 'a',                                                'allowed'   => 'none^img',                                                'attributes'=> array(   'url'   => 'href=%2$s%1$s%2$s',                                                                        't'     => 'target=%2$s%1$s%2$s')                                               )                              );    /**    * Executes statements before the actual array building starts    *    * This method should be overwritten in a filter if you want to do    * something before the parsing process starts. This can be useful to    * allow certain short alternative tags which then can be converted into    * proper tags with preg_replace() calls.    * The main class walks through all the filters and and calls this    * method if it exists. The filters should modify their private $_text    * variable.    *    * @return   none    * @access   private    * @see      $_text    * @author   Stijn de Reede  <sjr@gmx.co.uk>    */    function _preparse()    {        $options = PEAR::getStaticProperty('HTML_BBCodeParser','_options');        $o = $options['open'];        $c = $options['close'];        $oe = $options['open_esc'];        $ce = $options['close_esc'];        $pattern = array(   "!(^|\s|\()((((http(s?)|ftp)://)|www)[-a-z0-9.]+\.[a-z]{2,4}[^\s()]*)!i",                            "!".$oe."url(".$ce."|\s.*".$ce.")(.*)".$oe."/url".$ce."!iU");        $replace = array(   "\\1".$o."url".$c."\\2".$o."/url".$c,                            $o."url=\\2\\1\\2".$o."/url".$c);        $this->_preparsed = preg_replace($pattern, $replace, $this->_text);    }}?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?