Heim php教程 php手册 php设计模式 Interpreter(解释器模式)

php设计模式 Interpreter(解释器模式)

Jun 21, 2016 am 08:54 AM
case function return

复制代码 代码如下:


/**
* 解释器 示例
*
* @create_date: 2010-01-04
*/
class Expression
{
function interpreter($str)
{
return $str;
}
}
class ExpressionNum extends Expression
{
function interpreter($str)
{
switch($str)
{
case "0": return "零";
case "1": return "一";
case "2": return "二";
case "3": return "三";
case "4": return "四";
case "5": return "五";
case "6": return "六";
case "7": return "七";
case "8": return "八";
case "9": return "九";
}
}
}
class ExpressionCharater extends Expression
{
function interpreter($str)
{
return strtoupper($str);
}
}
class Interpreter
{
function execute($string)
{
$expression = null;
for($i = 0;$i$temp = $string[$i];
switch(true)
{
case is_numeric($temp): $expression = new ExpressionNum(); break;
default: $expression = new ExpressionCharater();
}
echo $expression->interpreter($temp);
}
}
}
$obj = new Interpreter();
$obj->execute("12345abc");
?>



Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Detaillierte Erläuterung der Verwendung von Return in der C-Sprache Detaillierte Erläuterung der Verwendung von Return in der C-Sprache Oct 07, 2023 am 10:58 AM

Detaillierte Erläuterung der Verwendung von Return in der C-Sprache

Was bedeutet Funktion? Was bedeutet Funktion? Aug 04, 2023 am 10:33 AM

Was bedeutet Funktion?

Wie ist die Ausführungsreihenfolge von Return- und Final-Anweisungen in Java? Wie ist die Ausführungsreihenfolge von Return- und Final-Anweisungen in Java? Apr 25, 2023 pm 07:55 PM

Wie ist die Ausführungsreihenfolge von Return- und Final-Anweisungen in Java?

HMD Skyline erhält eine neue Farboption und ein offizielles Magnetgehäuse HMD Skyline erhält eine neue Farboption und ein offizielles Magnetgehäuse Aug 23, 2024 am 07:04 AM

HMD Skyline erhält eine neue Farboption und ein offizielles Magnetgehäuse

Was ist der Zweck der Funktion „enumerate()' in Python? Was ist der Zweck der Funktion „enumerate()' in Python? Sep 01, 2023 am 11:29 AM

Was ist der Zweck der Funktion „enumerate()' in Python?

Detaillierte Erläuterung der Rolle und Funktion der MySQL.proc-Tabelle Detaillierte Erläuterung der Rolle und Funktion der MySQL.proc-Tabelle Mar 16, 2024 am 09:03 AM

Detaillierte Erläuterung der Rolle und Funktion der MySQL.proc-Tabelle

Variable zur Fallbeurteilung wechseln Variable zur Fallbeurteilung wechseln Feb 19, 2024 am 08:04 AM

Variable zur Fallbeurteilung wechseln

Detaillierte Erläuterung der Rückgabewerte und Rückgabeanweisungen von JavaScript-Funktionen Detaillierte Erläuterung der Rückgabewerte und Rückgabeanweisungen von JavaScript-Funktionen Aug 04, 2022 am 09:46 AM

Detaillierte Erläuterung der Rückgabewerte und Rückgabeanweisungen von JavaScript-Funktionen

See all articles