Если вам нужен префикс, который вам может понравиться
for ((i=7;i<=12;i++)); do echo `printf "%2.0d\n" $i |sed "s/ /0/"`;done
, который даст
07
08
09
10
11
12
Родительский метод __construct()
, определенный в классе b, будет запускаться автоматически, если вы создадите экземпляр дочернего класса a, , если только не существует метод __construct()
, определенный в классе a.
class a extends b {
}
class b {
public function __construct()
{
echo 'In B Constructor';
}
}
$x = new a();
Если метод __construct()
определен в классе a, то это отменяет использование метода __construct()
в классе b .... он будет запускать вместо класса b __construct()
method
class a extends b {
public function __construct()
{
echo 'In A Constructor';
}
}
class b {
public function __construct()
{
echo 'In B Constructor';
}
}
$x = new a();
Итак, если в вашем дочернем классе определен метод __construct()
, то вам нужно явно вызвать конструктор для родителя, если вы хотите выполнить его также.
class a extends b {
public function __construct()
{
parent::__construct();
echo 'In A Constructor';
}
}
class b {
public function __construct()
{
echo 'In B Constructor';
}
}
$x = new a();
Я не уверен, что полностью понимаю, о чем вы спрашиваете, но вы можете вызвать метод конструирования родителей из конструктора ребенка
parent::__construct();
Это единственный вариант, который я знаю.
Позвоните parent::__construct()
в a::__construct()
:
class a extends b
{
public function __construct()
{
parent::__construct();
}
public function validateStuff()
{
$this->insert_record();
}
}
. Вы можете вообще не указывать конструктор a, если вы не делаете какой-то специфической вещи.