Hola, estoy intentando aprender como funciona la programación orientada a objetos y estoy algo perdido a la hora de extender una clase a otra, tengo dos clases ("Alerta e Imagen") y me gustaría extenderlas a Html, pero no veo en que tramos lo estoy haciendo mal
Lo que busco es que lo siguiente funcione
Código PHP:
$Html=new Html();
$Html->alert('success','Éxito','Mensaje...','close');
$Html->alert('info','Información','Mensaje...','close');
$Html->image('https://www.google.es/images/srpr/logo11w.png','rounded');
$Html->image('https://www.google.es/images/srpr/logo11w.png','circle');
Código HTML:
<!DOCTYPE html>
<html lang="">
<head>
<title>Title Page</title>
<meta charset="UTF-8">
<meta name=description content="">
<meta name=viewport content="width=device-width, initial-scale=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CSS -->
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css" rel="stylesheet" media="screen">
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap-theme.min.css" rel="stylesheet" media="screen">
<style>body {margin: 20px;}</style>
</head>
<body>
Código PHP:
class Alerta {
//success/info/warning/danger
private $alerta;
public function alert($style, $ttl, $msg, $close=null) {
if(isset($close)){$close="<button type=\"button\" class=\"close\" data-dismiss=\"alert\" aria-hidden=\"true\">×</button>\n";}
echo $this->alerta="<div class=\"alert alert-$style alert-dismissable\">".$close."<strong>".ucwords($ttl)."!</strong> $msg</div>\n";
}
}
class Imagen {
//rounded/circle/thumbnail
private $imagen;
public function image($src, $style) {
echo $this->imagen="<img src=\"$src\" alt=\"...\" class=\"img-$style\">";
}
}
$objAlerta=new Alerta();
$objAlerta->alert('success','Éxito','Mensaje...','close');
$objAlerta->alert('info','Información','Mensaje...','close');
$objImagen=new Imagen();
$objImagen->image('https://www.google.es/images/srpr/logo11w.png','circle');
class Html extends Alerta {}
class Html extends Imagen {}
$Html=new Html();
$Html->alert('success','Éxito','Mensaje...','close');
$Html->image('https://www.google.es/images/srpr/logo11w.png','circle');
Código HTML:
<!-- jQuery -->
<script src="//code.jquery.com/jquery.js"></script>
<!-- Bootstrap JavaScript -->
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script>
</body>
</html>