2012-04-27 89 views
2

如何检查php中的变量是否包含文本?如何检查变量是否包含特定文本

如:

如果($ CN包含 'Excel的'){...}

我目前得到了工作的下面却是笨拙,如果课程名称改变,那么它将不再起作用。

if (strpos($cn,'MS Excel 2003/07 (Intro)') !== false) { 
........... 
} 
if (strpos($cn,'MS Excel 2003/07 (Intermediate)') !== false) { 
........... 
} 
if (strpos($cn,'MS Excel 2003/07 (Special)') !== false) { 
........... 
} 
+1

如果名称改变,你是什么意思?它可以改变到什么?你只能搜索“Excel”。 – Grego 2012-04-27 11:28:58

+0

谢谢,我早些时候尝试过,但没有奏效,不知道我做了什么,但是只搜索excel正在工作。通过改变我的意思是介绍简介。 – Wilest 2012-04-27 11:32:18

回答

1

您应该将课程名称存储在数据库中以方便维护。

因此,像这样将是可取的......

// $sources should be an array of course names from the DB 

foreach($sources as $name) { 
    if(strstr($cn, $name)) {...} 
} 
+0

谢谢,我将它存储在数据库中。 – Wilest 2012-04-27 11:32:36

1

每门课程可以有一个ID以及一个Name。然后,您的所有代码都可以通过ID引用课程,但是您可以通过UI向用户显示Name

这样一来,就可以让一个疗程Name改变而无需更新您的代码/添加到每次更改列表。

相关问题