+ -
当前位置:首页 → 问答吧 → “判断变量值 调用不同模板”中 变量值怎么能为任意整数?

“判断变量值 调用不同模板”中 变量值怎么能为任意整数?

时间:2011-09-07

来源:互联网



各位大大,我写了一个很简单的代码。目的是想根据数据库返回值不同,选择调用不同模板。代码如下:

  1. $ok_id = "数据库中调用值";   //定义ok_id变量从数据库中调用值

  2. if($ok_id == "news" ){         //当返回$ok_id 值为 "news"时,选择news.php模板
  3.      $templates[] = "news.php";
  4. }     

  5. else if($ok_id == "photo"){   //当返回$ok_id 值为 "photo"时,选择photo.php模板
  6. $templates[] = "photo.php";
  7. }
复制代码


这段代码测试没有问题。 现在我想在 if($ok_id == "news" ) 这里再加一个条件。
当 $ok_id 值为 "news_1"  "news_2" ... "news_n" (n为整数) 时,同样调用 news.php模板。
当 $ok_id 值为 "photo_1"  "photo_2" ... "photo_n" (n为整数) 时,同样调用 photo.php模板。

各位大大,这个代码应该怎么写呢?

作者: chase0010   发布时间: 2011-09-07

用正则判断,给个参考: 换成if(eregi('news',$ok_id )) {·············}elseif(eregi('photo',$ok_id )) {·······}

作者: TNT9527   发布时间: 2011-09-07

用正则判断,给个参考: 换成if(eregi('news',$ok_id )) {·············}elseif(eregi('photo ...
TNT9527 发表于 2011-9-7 15:04



    同意楼上的意见!!!

作者: 百优石笼   发布时间: 2011-09-07


  1. $ok_id = "数据库中调用值";   //定义ok_id变量从数据库中调用值

  2. if(strpos($ok_id,'news_') === 0){         //当返回$ok_id 值为 "news_"时,选择news.php模板
  3.      $templates[] = "news.php";
  4. }else if(strpos($ok_id,'photo_') === 0){   //当返回$ok_id 值为 "photo_"时,选择photo.php模板
  5.         $templates[] = "photo.php";
  6. }else {
  7.         $templates[] = "default.php";
  8. }
复制代码
如果要精确验证,那么使用preg_match,否则,就用上面的吧

作者: llh110220   发布时间: 2011-09-07

回复 TNT9527
谢谢这位大大,用你的方法解决了。真是感激不尽。

作者: chase0010   发布时间: 2011-09-07

回复 llh110220


    嗯。因为取回值有"news" 和 "news-n"两种,所以感觉还是近似匹配就好了。

作者: chase0010   发布时间: 2011-09-07

相关阅读 更多