裏面我是新來的OOP和PDO的世界和一個函數返回的數據和想要使用另一個函數內部時,只需要有點手。如何使用陣列從一個功能,其他功能
下面是我的功能,從我的數據庫中獲取所有壁虎數據,此刻我打印出陣列,所以我知道它的工作。
功能getGecko:
public function getGecko($geckoName){
$dbh = $this->dbh;
try {
if (!$geckoName) {
throw new Exception("No gecko name set!");
}
$stmt = $dbh->query("SELECT * FROM geckos WHERE gecko_name = '$geckoName'");
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$row_count = $stmt->rowCount();
$row = $stmt->fetch();
if($row_count > 0){
print_r($row);
return true;
} else {
echo 'No information found for '.$geckoName.'!';
return false;
}
}
catch (Exception $e) {
echo $e->getMessage();
}
}
其作爲輸出 - Array ([gecko_id] => 1 [gecko_name] => Zilly [gecko_aquisition_date] => 0000-00-00 [gecko_type] => Normal [gecko_gender] => Male [gecko_traits] => [gecko_bio] => Hench bastard [gecko_health_check] => All good! [gecko_bred] => 0 [gecko_hatchling] => 0 [gecko_clutch] => [gecko_photo] =>)
- 沒有問題。
但我想在一個名爲getMorph的函數內使用這個數據來利用[gecko_type] => Normal
。我曾嘗試過這樣的事情:
public function getMorph($geckoName){
$this->getGecko($geckoName);
echo $row['gecko_type'];
}
但它什麼也沒有返回。我很習慣從程序的角度來說,我只是想讓自己和我的代碼更好,並希望陷入OOP。我很抱歉,如果這被認爲是'noob'的問題,但正如我所說,我正在努力學習。
感謝您的時間:)
哪裏是定義$行在getMorph?你應該返回一個變量的東西? $這 - > getGecko($ geckoName);返回true,但永遠不會給變量 –