Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] no entiendo el error : Constructor clase::metodo() cannot be static

Estas en el tema de no entiendo el error : Constructor clase::metodo() cannot be static en el foro de PHP en Foros del Web. Buenas estoy con el siguiente error y no entiendo por que. ya que en otra clase utilizo metodos static como aqui y no me da ...
  #1 (permalink)  
Antiguo 07/03/2017, 19:18
Avatar de JAK^  
Fecha de Ingreso: octubre-2005
Ubicación: ^^CaMiNiTo Al CoSTaDo DeL
Mensajes: 850
Antigüedad: 18 años, 6 meses
Puntos: 4
no entiendo el error : Constructor clase::metodo() cannot be static

Buenas estoy con el siguiente error y no entiendo por que. ya que en otra clase utilizo metodos static como aqui y no me da problema. el error es

Fatal error: Constructor Menubar::menuBar() cannot be static in /home/c0240420/public_html/backend/menubar.php on line 88

Código PHP:
 class Menubar
{


    public static function 
menuBar() {

        
// secciones
        // 
        
        
$productos    "productos.php";
        
$stock        "stock.php";
        
$prevent    "prevent.php"//solicitudes de preventista


        
$point         =  basename($_SERVER[‘PHP_SELF’]);

        
        
$menuProductos    '<li><a href="'.$productos.'">Productos</a></li>';
        
$menuStock        '<li><a href="'.$stock.'">Productos</a></li>';    
        
$menuPrevent    '<li><a href="'.$prevent.'">Productos</a></li>';




        switch(
$point) {

            case 
$productos:

                
$menuProductos '<li class="dropdown">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Productos <span class="caret"></span></a>
                  <ul class="dropdown-menu">
                            <li><a href="#" id="menu-alta-producto">Alta</a></li>
                        <li><a href="#" id="menu-baja-producto">Baja</a></li>
                        <li><a href="#" id="menu-modif-producto">Modificación</a></li>
                        
            
                      </ul>
                    </li>'
;

            break;
            case 
$stock:

                
$menuProductos '<li class="dropdown">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Stock <span class="caret"></span></a>
                  <ul class="dropdown-menu">
                            <li><a href="#" id="menu-alta-producto">Alta</a></li>
                        <li><a href="#" id="menu-baja-producto">Baja</a></li>
                        
            
                      </ul>
                    </li>'
;

            break;

        }

        
$menu '<nav class="navbar navbar-default">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="index.php"><img src="../img/frigofan-back.png" style="margin-top: -5px;"></a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">'
.$menuProductos.$menuStock.$menuPrevent.'</ul>
      
      <ul class="nav navbar-nav navbar-right">
        <li><a href="http://www.frigofan.com">Ir al sitio</a></li>
        
      </ul>
    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>'
;

    return 
$menu;
    }

__________________
hola . . .
  #2 (permalink)  
Antiguo 07/03/2017, 19:57
Avatar de JAK^  
Fecha de Ingreso: octubre-2005
Ubicación: ^^CaMiNiTo Al CoSTaDo DeL
Mensajes: 850
Antigüedad: 18 años, 6 meses
Puntos: 4
Respuesta: no entiendo el error : Constructor clase::metodo() cannot be static

SOLUCIONADO: por si alguno le pasa lo mismo el problema era el nombre del metodo. Si se tiene un nombre de método que es el mismo que el nombre de la clase, se considera que es un constructor. Los constructores no pueden ser estáticos. Cambiar el nombre ya sea esta clase o método, o hacer que el método no estático y crear una instancia de la clase cuando se desea utilizarlo.
__________________
hola . . .

Etiquetas: constructor, html, static
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:13.