dswqz24846 2013-10-22 10:20
浏览 28
已采纳

这段代码的另一种方法是什么?

i have a following code. i have a array of month.

         $m="";
         $months = array(1=>'January',2=>'February',3=>'March',4=>'April',5=>'May',6=>'June',7=>'July',8=>'August',9=>'September',10=>'October',11=>'November',12=>'December');

         foreach($objhst_fees->fetch_hst_fees("`month`,`fees`","where `grno`='".$stu_name['grno']."'")as $count_month)
          { 
                           //value like:$count_month['month']=1,2,3
            $m  .= $count_month['month'].",";
          }

so assume $m=1,2,3,4,5,
then,i explode it and create array.

          $paid_month = explode(",",$m);
          $arr=array();
          foreach($paid_month as $key=>$p)
          {
            array_push($arr,$p);
          } 

and then, i print the month name which is not in $arr.

          foreach($months as $key=>$a)
          {
             if(!in_array($key,$arr))
             {
                echo $a.",";
                //echo $months[$key];
             }
           }

but i think,this method is to long for it.so what is the alternatives for doing this?

  • 写回答

3条回答 默认 最新

  • dongtang8678 2013-10-22 10:27
    关注

    In the code:

    foreach($objhst_fees->fetch_hst_fees("`month`,`fees`","where `grno`='".$stu_name['grno']."'")as $count_month) { 
       //value like:$count_month['month']=1,2,3
       $m  .= $count_month['month'].",";
    }
    

    you could change:

    $m  .= $count_month['month'].",";
    

    to

    $m[] = $count_month['month'];
    

    which will avoid need to explode() it again

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了