我有一些URL是這樣的:如何創建一個多名字方法?
www.example.com/classname/method1/arg
www.example.com/classname/method2/arg
www.example.com/classname/method3/arg
另外我有一個class
這樣的:
class classname{
public function method1($arg){
return $this->main_method(__FUNCTION__, $arg);
}
public function method2($arg){
return $this->main_method(__FUNCTION__, $arg);
}
public function method3($arg){
return $this->main_method(__FUNCTION__, $arg);
}
public main_method($TableName, $arg){
// connect to database
$stm = $db->prepare("SELECT id, word, mean FROM $TableName where word = ':word'");
$stm->bindValue(":word", $arg, PDO::PARAM_STR);
$stm->execute();
$result = $stm->fetch();
return = $result;
}
}
正如從上面的代碼清楚,有三個表:
// method1 // method2 // method3
+----+------+-----------+ +----+------+-----------+ +----+------+-----------+
| id | word | mean | | id | word | mean | | id | word | mean |
+----+------+-----------+ +----+------+-----------+ +----+------+-----------+
現在我想知道,是否可以使用m創建一個函數多重名字?因爲這三種方法有一個(差不多)相同的操作... (我可以傳遞方法的名稱作爲多名稱方法的另一個參數)或者我怎樣才能優化上面的代碼?
要麼我錯過了這個觀點,要麼你只是想做一些毫無意義的事情。你所有的參數都是一樣的。該功能最終只做一項任務。爲什麼你不能只使用一個函數/方法? – itsols
每種方法的操作有何不同? – itsols
@itsols'__FUNCTION__'在每種方法中都不相同。 – Shafizadeh