1
私はPHPでオブジェクトの配列を反復しようとしていますが、わかりません。これは私のコードです:OOP in 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
をあなたはあります必ずPHPで配列を初期化する必要がありますか? – user794596
クエリに一致する行がない場合、変数 '$ nizTiketa'は存在しません。これは厳密には、変数を初期化することで回避したいエラーです。 – deceze