2017-09-26 44 views
0
<?php 
/*FInd fifth_number - private method*/ 

    function get_number_root($root) { 
     switch($root) { 
      case 'A': 
       $number = 1; 
       break; 
      case 'A#': 
       $number = 2; 
       break; 
      case 'Bb': 
       $number = 2; 
       break; 
      case 'B': 
       $number = 3; 
       break; 
      case 'C': 
       $number = 4; 
       break; 
      case 'C#': 
       $number = 5; 
       break; 
      case 'Db': 
       $number = 5; 
       break; 
      case 'D': 
       $number = 6; 
       break; 
      case 'D#': 
       $number = 7; 
       break; 
      case 'Eb': 
       $number = 7; 
       break; 
      case 'E': 
       $number = 8; 
       break; 
      case 'F': 
       $number = 9; 
       break; 
      case 'F#': 
       $number = 10; 
       break; 
      case 'G': 
       $number = 11; 
       break; 
      case 'G#': 
       $number = 12; 
       break; 
      case 'Ab': 
       $number = 12; 
       break; 
      default: 
       die('error'); 
       return $number; 
     } 

     $number = get_number_root($_POST['root']); 
    } 
?> 
+4

歡迎來到StackOverflow!要完全理解你想要完成的事情有點困難,所以爲了讓我們更好地幫助你,請更新你的問題,以便它增加一點**上下文來幫助澄清你的**意圖。如果你能讓我們知道你有什麼[**嘗試到目前爲止**](http://meta.stackoverflow.com/questions/261592),也會有所幫助。有關詳細信息,請參閱有關[**如何提出良好問題**](http://stackoverflow.com/help/how-to-ask)的幫助文章,並參加該網站的[**遊覽**](http://stackoverflow.com/tour):) –

回答

0

發生這種情況的原因是您沒有在代碼中使用$number變量用於任何目的。 所以它沒有被使用。 此外,由於您在同一個方法中調用$number = get_number_root($_POST['root']);,所以在切換case語句之後,通過調用方法覆蓋的數字。 來克服這個寫函數返回數字並以不同的方法調用該函數。 檢查下面的示例

function get_number_root($root) { 
     switch($root) { 
      case 'A': 
       $number = 1; 
       break; 
      case 'A#': 
       $number = 2; 
       break; 
      case 'Bb': 
       $number = 2; 
       break; 
      case 'B': 
       $number = 3; 
       break; 
      case 'C': 
       $number = 4; 
       break; 
      case 'C#': 
       $number = 5; 
       break; 
      case 'Db': 
       $number = 5; 
       break; 
      case 'D': 
       $number = 6; 
       break; 
      case 'D#': 
       $number = 7; 
       break; 
      case 'Eb': 
       $number = 7; 
       break; 
      case 'E': 
       $number = 8; 
       break; 
      case 'F': 
       $number = 9; 
       break; 
      case 'F#': 
       $number = 10; 
       break; 
      case 'G': 
       $number = 11; 
       break; 
      case 'G#': 
       $number = 12; 
       break; 
      case 'Ab': 
       $number = 12; 
       break; 
      default: 
       die('error'); 
     } 
     return $number; 

    } 

function getNumberAccordingToRoot(){ 
    $number = get_number_root($_POST['root']); 
//Do the necessaries to $number here 
}