首頁 > 後端開發 > php教程 > 命名空间中怎么实现全部单词替换

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

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
發布: 2016-06-13 13:18:12
原創
910 人瀏覽過

命名空间中如何实现全部单词替换
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
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板