現在我正試圖解決處理數據的問題:a)來自Facebook Graph API或b)由用戶通過表單提交手動提供。爲了保持它的簡單,這是我當前如何建立類,不佔手動表單提交:如何從兩個來源之一設置對象的值
class user {
public $collegemajor;
public function __construct($collegemajor)
$this->collegemajor = $collegemajor;
$collegemajor = isset($user_profile['education'][0]['concentration'][0]['name']) ? $user_profile['education'][0]['concentration'][0]['name'] : null ;
$objUser = new user ($collegemajor);
}
這裏大致就是我想要做的事。請記住,我還沒有在應用程序中使用getter或setter方法。目標是將$ collegemajor設置爲Graph API值(如果可用)或者如果API數據不可用,則將其設置爲發佈的表單提交。假設數據不可用於API,則用戶已經通過表單提交了主要數據。做這個的最好方式是什麼?它是一個getter和setter方法嗎?如果是這樣,我就不知道如何構建它。如何將它添加到該行:
$collegemajor = isset($user_profile['education'][0]['concentration'][0]['name']) ? $user_profile['education'][0]['concentration'][0]['name'] : null ;
表單提交的值,如果存在的話,會是這樣的:
$_POST['major'];
這裏是我的下面失敗的嘗試。它沒有按計劃返回表單提交值。任何幫助將不勝感激:
class user {
public $collegemajor;
public function __set($collegemajor, $value) {
if (isset($this->collegemajor)) {
return $this->collegemajor;
} else {
return $_POST['major'];
}
}
public function __construct($collegemajor) {
$this->collegemajor = $collegemajor;
}
public function echos() {
echo "$this->collegemajor";
}
}
?>