Şu anda PHP'nin PDO sınıfının biraz kullanan bir veritabanı sınıfı programlama değilim, ama ben biraz daha kolay, belirli bir uygulama programlama yapmak için bazı basit özellikler eklemek istiyorum.
Ben nereye gidiyorum şimdi sahte kod aşağıdaki parça görebilirsiniz. Bu örnekte tek sorun $ sonuç değişkeni Ben komut ileride yapıyorum bazı şeyler comparisation için kullanılamaz bir nesne, olmasıdır:
<?php
class Database
{
public function FetchRow ( $query )
{
// .. do some stuff, and make a $result variable
return DatabaseStatement ( $result );
}
}
class DatabaseStatement
{
private $result;
public function __construct ( $query )
{
// .. save result in property etc.
}
public function __get ( $column )
{
// .. check result item
return $this -> result [ $column ];
}
}
$db = new Database;
$result = $db -> Query ( 'SELECT * FROM users WHERE id = 1;' );
if ( $result != null ) // Here $result should be an array OR null in case no rows are returned
{
echo $result -> username; // Here $result should call the __get method
echo '<pre>' , print_r ( $result ) , '</pre>'; // Here $result should be the array, cause it wasn't null just yet
}
Eğer ben bir comparisation yapıyorum zaman $ sonuç değişkeni bir nesne olmamalıdır görebileceğiniz gibi, ben __ toString kullanarak bir dize yapılabilir biliyorum. Ama diğer bazı tip, çoğunlukla bir dizi veya null olmak istiyorum.
O (mümkün olmalıdır ben çok güçlük ile düşünmek) mümkün ise nasıl ben çalışma gibi bir şey almak mı?
Yani biri bana doğru yönde işaret edebilir, ya da muhtemelen çalışması gerekir kodu bir parça vermek ya da benim şimdiki sınıfa girmekte değiştirebilirsiniz?