{A continuación se mostrara un ejemplo utilizando un conjunto de métodos abstractos con una clase, Cuando una declaración de método de instancia incluye un modificador abstract, se dice que el método es un método abstracto (ref: msdn ).
aqui el codigo:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Clases y metodos abstractos</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body>
<section>
<?php
//asignando clase abstracta
abstract class Padre{
abstract protected function getValor();
abstract protected function valor($arg);
abstract protected function valor2($arg);
public static function imprimir(){
echo $this->getValor();
}
}//Fin class Padre
class Hija extends Padre{
protected function getValor()
{
return "Imprimiendo Valor";
}
public function valor($arg){
return "imprimiendo el valor $arg";
}
//abstracta ocn valor extra
public function valor2($arg,$valorExtra=8){
return "imprimiendo el valor $arg con valor extra $valorExtra";
}
}//Fin class Hija
Padre::imprimir();
$a = new Hija();
$a->imprimir();
echo $a->$valor(2);
}
?>
</section>
</body>
</html>
Cualquier duda de esta intro al padre e hijo asla saber.
}