> 백엔드 개발 > PHP 튜토리얼 > 命名空间中怎么实现全部单词替换

命名空间中怎么实现全部单词替换

WBOY
풀어 주다: 2016-06-13 13:18:12
원래의
896명이 탐색했습니다.

命名空间中如何实现全部单词替换
DataCleaner.inc.php:

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php namespace DataCleaner;

    class Clean {
        function RemoveProfanity($text) {
            $badwords = array(
                                "idiotic" => "shortsighted",
                                "moronic" => "unreasonable",
                                "insane" => "illogical"
                             );
            
            // Remove bad words
            foreach ($badwords as $key => $value) {
                if (strpos($text, $key) !== false)
                    return str_replace($key, $value, $text);
            }
        }
    }
?>

로그인 후 복사



Library.inc.php:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php namespace Library;

    class Clean {
        function FilterTitle($text) {
            // Trim white space and capitalize first word
            return ucfirst(trim($text));
        }
    }
?>

로그인 후 복사




index.php:
PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php include "DataCleaner.inc.php";
    include "Library.inc.php";
    
    $data = new DataCleaner\Clean();
    $library = new Library\Clean();
    
    $title = "the moronic sun also rises idiotic insane";
    
    printf("Title before filters: %s<br />", $title);
    
    $title = $data->RemoveProfanity($title);
    printf("Title after Data::Clean: %s<br>", $title);
    
    $title = $library->FilterTitle($title);
    printf("Title after Library::Clean: %s<br>", $title);
?>

로그인 후 복사



输出:
Title before filters: the moronic sun also rises idiotic insane
Title after Data::Clean: the moronic sun also rises shortsighted insane
Title after Library::Clean: The moronic sun also rises shortsighted insane


怎么实现把所有的
"idiotic" => "shortsighted",
"moronic" => "unreasonable",
"insane" => "illogical"
这些词都替换成相应的单词??

------解决方案--------------------
foreach ($badwords as $key => $value) {
if (strpos($text, $key) !== false)
return str_replace($key, $value, $text);
}
=================

修改为
return strtr($text, $badwords);
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿