ホームページ > バックエンド開発 > PHPチュートリアル > PHPデザインパターン インタプリタ(インタプリタモード)_PHPチュートリアル

PHPデザインパターン インタプリタ(インタプリタモード)_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:27:14
オリジナル
718 人が閲覧しました

复制代码代码如下:

/**
* インタプリタの例
*
* @create_date: 2010-01-04
*/
クラス式
{
関数インタプリタ($str)
{
return $str;
}
}
class ExpressionNum extends Expression
{
function interpreter($str)
{
switch($str)
{
case "0": return "零";
ケース "1": "一" を返します。
ケース "2": "二" を返します。
ケース "3": "三" を返します。
ケース "4": "四" を返します。
ケース "5": "五" を返します。
case "6": "6" を返します。
ケース "7": "七" を返します。
case "8": "8" を返します。
ケース "9": "九" を返します。
}
}
}
class ExpressionCharator extends Expression
{
function interpreter($str)
{
return strtoupper($str);
}
}
クラスインタープリタ
{
functionexecute($string)
{
$expression = null;
for($i = 0;$i$temp = $string[$i];
switch(true)
{
case is_numeric($temp): $expression = new ExpressionNum();壊す;
デフォルト: $expression = new ExpressionCharater();
}
echo $expression->interpreter($temp);
}
}
}
$obj = 新しいインタープリター();
$obj->execute("12345abc");
?>

www.bkjia.com本当http://www.bkjia.com/PHPjc/323795.html技術記事代制コード例下: ?php /*** インタプリタの例 * * @create_date: 2010-01-04*/ class Expression { functioninterpreter($str) { return $str;クラス ExpressionNum は拡張します...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート