2011-03-18 57 views
-2

我:PHP函數echo

$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; 

有什麼不對?

+2

你應該打開錯誤報告... – Macmade 2011-03-18 08:40:25

回答

0

您需要的變量傳遞給函數,現在,通過功能的啓動判斷它需要一個字符串用破折號作爲arguement分離的日期,所以你需要做的是這樣的:

$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; 
+0

謝謝,我會用這個。 – m3tsys 2011-03-18 20:26:32

3

你的函數需要一個參數。你沒有通過一個。

$zodia=CalculareZodie($somedate); 

你也拼錯了。

+0

謝謝你很多。 – m3tsys 2011-03-18 20:25:33

1

你忘了傳遞參數。同時檢查拼寫CalzulareZodie

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

$十二生肖= CalculareZodie( '在這裏指定日期');

+0

謝謝你很多。 – m3tsys 2011-03-18 20:25:07

0

有幾件事情是錯誤的。

  1. 你,你是不是傳遞一個日期參數
  2. 的變量是不是在功能來訪問,需要設置爲全局是這樣的:

    功能CalzulareZodie($日期) {

    global $ an,$ luna,$ zi;中的作用

    }

+0

...而且當你調用它時,這個函數拼寫錯誤。 – jodm 2011-03-18 08:43:46

+0

謝謝你很多。 – m3tsys 2011-03-18 20:24:40

1

您應該通過日期作爲函數的自變量的

// REST。

另請注意,在函數外聲明的變量在函數中不可用。要麼你必須聲明它們內部的功能或使用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; 
+0

謝謝你很多。 – m3tsys 2011-03-18 20:26:10