1
我想遍歷PHP中的對象數組,但我無法弄清楚。這是我的代碼:面向對象的PHP - 對象數組迭代
require_once("databaseConnect.php");
require_once("class/Ticket.php");
function showAll(){
$sql = "SELECT * FROM Ticket WHERE Status='1'";
$p = mysql_query($sql);
while ($row = mysql_fetch_object($p)){
$t = new Ticket($row->IDTicket, $row->IDUser, $row->TotalOdd, $row->PlacedBet, $row->PossibleWin, $row->Status, $row->Won, $row->Time);
$nizTiketa[] = $t;
}
return $nizTiketa;
}
$niz = showAll();
for ($i; $i<count($niz); $i++){
echo $niz[$i]->getIDTicket()."<br/>";
}
,這是類票:
class Ticket {
private $IDTicket;
private $IDUser;
private $TotalOdd;
private $PlacedBet;
private $PossibleWin;
private $Status;
private $Won;
private $Time;
function Ticket($idTicket, $idUser, $totalOdd, $placedBet, $possibleWin, $status, $won, $time) {
$this->IDTicket = $idTicket;
$this->IDUser = $idUser;
$this->TotalOdd = $totalOdd;
$this->PlacedBet = $placedBet;
$this->PossibleWin = $possibleWin;
$this->Status = $status;
$this->Won = $won;
$this->Time = $time;
}
function getIDTicket(){
return $this->IDTicket;
}
function setIDTicket($idTicket){
$this->IDTicket = $idTicket;
}
。 。 。
我一個非對象遇到錯誤調用一個成員函數getIDTicket()
應該怎樣做呢?
只是爲了理智,在'$ nizTiketa =陣列添加();在''的功能SHOWALL(頂部)' - 添加一些進去之前總是初始化您的數組:) – Joe 2012-02-09 00:13:03
你確定你必須在PHP中初始化數組? – user794596 2012-02-09 00:15:46
事情是,如果沒有行匹配查詢,變量'$ nizTiketa'將不存在。這嚴格來說是一個你想通過初始化變量來避免的錯誤。 – deceze 2012-02-09 00:19:47