php函数echo

时间:2011-03-18 08:37:00

标签: php function

我有:

$an = "1989";
$luna = "4";
$zi = "23";


function CalzulareZodie($date){
         list($an,$luna,$zi)=explode("-",$date);
         if(($luna==1 && $day>20)||($month==2 && $zi<20)){
              return "Varsator";
         }else if(($luna==2 && $zi>18 )||($luna==3 && $zi<21)){
              return "Pesti";
         }else if(($luna==3 && $zi>20)||($luna==4 && $zi<21)){
              return "Berbec";
         }else if(($luna==4 && $zi>20)||($luna==5 && $zi<22)){
              return "Taur";
         }else if(($luna==5 && $zi>21)||($luna==6 && $zi<22)){
              return "Gemeni";
         }else if(($luna==6 && $zi>21)||($luna==7 && $zi<24)){
              return "Rac";
         }else if(($luna==7 && $zi>23)||($luna==8 && $zi<24)){
              return "Leu";
         }else if(($luna==8 && $zi>23)||($luna==9 && $zi<24)){
              return "Fecioara";
         }else if(($luna==9 && $zi>23)||($luna==10 && $zi<24)){
              return "Balanta";
         }else if(($luna==10 && $zi>23)||($luna==11 && $zi<23)){
              return "Scorpion";
         }else if(($luna==11 && $zi>22)||($luna==12 && $zi<23)){
              return "Sagetator";
         }else if(($luna==12 && $zi>22)||($luna==1 && $zi<21)){
              return "Capricorn";
         }
    }

我怎么能回应这个功能的结果?

我试过了:

$zodia=CalculareZodie();
echo "Zodia este: ".$zodia;  

有什么问题?

6 个答案:

答案 0 :(得分:3)

你的函数需要参数。你没有通过。

$zodia=CalculareZodie($somedate);

你也拼错了它。

答案 1 :(得分:1)

你忘了传递参数。同时检查拼写CalzulareZodie

$zodia= CalzulareZodie('1989-4-23');
echo "Zodia este: ".$zodia; 

答案 2 :(得分:1)

您应该将日期作为函数的参数传递。

另请注意,函数外部声明的变量在函数中不可用。您必须在函数内声明它们或使用global variable scope

$an = "1989";
$luna = "4";
$zi = "23";


function CalzulareZodie($date){
         global $an, $luna, zi; // If you want
         list($an,$luna,$zi)=explode("-",$date);
         if(($luna==1 && $day>20)||($month==2 && $zi<20)){
              return "Varsator";
         }else if(($luna==2 && $zi>18 )||($luna==3 && $zi<21)){
              return "Pesti";
         }else if(($luna==3 && $zi>20)||($luna==4 && $zi<21)){
              return "Berbec";
         }else if(($luna==4 && $zi>20)||($luna==5 && $zi<22)){
              return "Taur";
         }else if(($luna==5 && $zi>21)||($luna==6 && $zi<22)){
              return "Gemeni";
         }else if(($luna==6 && $zi>21)||($luna==7 && $zi<24)){
              return "Rac";
         }else if(($luna==7 && $zi>23)||($luna==8 && $zi<24)){
              return "Leu";
         }else if(($luna==8 && $zi>23)||($luna==9 && $zi<24)){
              return "Fecioara";
         }else if(($luna==9 && $zi>23)||($luna==10 && $zi<24)){
              return "Balanta";
         }else if(($luna==10 && $zi>23)||($luna==11 && $zi<23)){
              return "Scorpion";
         }else if(($luna==11 && $zi>22)||($luna==12 && $zi<23)){
              return "Sagetator";
         }else if(($luna==12 && $zi>22)||($luna==1 && $zi<21)){
              return "Capricorn";
         }
    }

$zodia=CalzulareZodie("Enter your date here");
echo "Zodia este: ".$zodia; 

答案 3 :(得分:0)

$ zodia = CalculareZodie('在此指定日期');

答案 4 :(得分:0)

有几件事是错的。

  1. 你有一个你没有传入的日期参数。
  2. 变量在函数中不可访问,需要像这样设置为全局变量:

    function CalzulareZodie($ date){

    全球$ an,$ luna,$ zi;

    //功能的休息

    }

答案 5 :(得分:0)

你需要将变量传递给函数,现在,从函数的开始判断它需要一个字符串,日期用短划线作为争论,所以你需要做类似的事情:

$an = "1989";
$luna = "4";
$zi = "23";

$date = $an . '-' . $luna . '-' . $zi;  //Construct the string from the outside variables

然后你做:

$zodia=CalzulareZodie($date); //Pass constructed string to function.
echo "Zodia este: ".$zodia;