I have the following problem; there are 2 models in my application, but they are stored in the same table in my database. They can be differentiated by their type
column, the first being 0 and the second 1.
In my application i've made 2 classes, one for each type. However i'd only want to create the queries once, and use a static member to figure out the type. Basicly what i want to achieve would look like this:
class A
{
public $Description; //From the database
public static function GetAll()
{
$query = "SELECT * FROM letters WHERE type = " . self::getType();
echo $query;
}
private static function getType()
{
return 0;
}
}
class B
extends A
{
public $SomeOtherProperty; //B also has another property, which A doesnt have. Its stored an another table.
private static function getType()
{
return 1;
}
}
A::GetAll(10);
B::GetAll(10);
However, PHP doesnt support static memberwriting, which results in this output:
SELECT * FROM letters WHERE type = 0
SELECT * FROM letters WHERE type = 0
What's the best way to achieve such a result, where the child-class can specify its own type?