loggerstringmatchfilter.php.svn-base

来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 111 行

SVN-BASE
111
字号
<?php/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements.  See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License.  You may obtain a copy of the License at * *     http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * * @package log4php * @subpackage varia *//** * @ignore  */if (!defined('LOG4PHP_DIR')) define('LOG4PHP_DIR', dirname(__FILE__) . '/..'); /** */require_once(LOG4PHP_DIR . '/spi/LoggerFilter.php');/** * This is a very simple filter based on string matching. *  * <p>The filter admits two options {@link $stringToMatch} and * {@link $acceptOnMatch}. If there is a match (using {@link PHP_MANUAL#strpos} * between the value of the {@link $stringToMatch} option and the message  * of the {@link LoggerLoggingEvent}, * then the {@link decide()} method returns {@link LOG4PHP_LOGGER_FILTER_ACCEPT} if * the <b>AcceptOnMatch</b> option value is true, if it is false then * {@link LOG4PHP_LOGGER_FILTER_DENY} is returned. If there is no match, {@link LOG4PHP_LOGGER_FILTER_NEUTRAL} * is returned.</p> * * @author  Marco Vassura * @version $Revision: 635069 $ * @package log4php * @subpackage varia * @since 0.3 */class LoggerStringMatchFilter extends LoggerFilter {      /**     * @var boolean     */    var $acceptOnMatch = true;    /**     * @var string     */    var $stringToMatch = null;      /**     * @return boolean     */    function getAcceptOnMatch()    {        return $this->acceptOnMatch;    }        /**     * @param mixed $acceptOnMatch a boolean or a string ('true' or 'false')     */    function setAcceptOnMatch($acceptOnMatch)    {        $this->acceptOnMatch = is_bool($acceptOnMatch) ?             $acceptOnMatch :             (bool)(strtolower($acceptOnMatch) == 'true');    }        /**     * @return string     */    function getStringToMatch()    {        return $this->stringToMatch;    }        /**     * @param string $s the string to match     */    function setStringToMatch($s)    {        $this->stringToMatch = $s;    }    /**     * @return integer a {@link LOGGER_FILTER_NEUTRAL} is there is no string match.     */    function decide($event)    {        $msg = $event->getRenderedMessage();                if($msg === null or  $this->stringToMatch === null)            return LOG4PHP_LOGGER_FILTER_NEUTRAL;        if( strpos($msg, $this->stringToMatch) !== false ) {            return ($this->acceptOnMatch) ? LOG4PHP_LOGGER_FILTER_ACCEPT : LOG4PHP_LOGGER_FILTER_DENY ;         }        return LOG4PHP_LOGGER_FILTER_NEUTRAL;            }}

⌨️ 快捷键说明

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