Jump to content
Fórum Script Brasil
  • 0

Ajuda


Heloa

Question

Olá amigos, sou nova em PHP e estou precisando muito da ajuda dos amigos do forum.

Vamos lá ver se alguém pode me ajudar é o seguinte.

estou criando uma classe Livro, com seus respectivos atributos e sues possíveis métodos , defini os atributos e preciso definir as açoes que os mesmos possam realizar):

em seguida eu tenho que Implementar a Classe Livro contendo:

Atributos: nome do autor, ano, título;

Métodos: setters/getters;

e Criar o construtor para receber os atributos como parâmetros. Implementar um script php para instanciar dois Livros e exibir suas informações usando o comando echo.

estou com duvidas de como fazer tudo isso, alguém ai pode me ajudar?

comecei assim:

<?php

class livro {

private String titulo;

private int anoDePublicacao;

private int nomeAutor;

}

?>

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Olá Heloa, seja bem vinda ao forúm.

Bom, a principio seria interessante você pesquisar um pouco sobre OOP em PHP.

Sempre que colar algum código fonte no post, é interessante clicar no botão inserir code.

Vamos lá..

PHP não é uma linguagem typada, então o que você fez aqui não deve funcionar:

private String titulo;
private int anoDePublicacao;
private int nomeAutor;
No PHP para você declarar um construtor de uma classe, a sintaxe é:
function __construct() {
}
No em sua classe ficaria>
Class Livro 
{
       function __construct() {

      } 
  
}
Bom, não faz sentido declarar um construtor sem uma implementação. Então, com você mencionou, você precisa passar parâmetros para seu construtor: Ficaria algo do tipo:
Class Livro 
{

    private $titulo;
    private $anoDePublicacao;
    private $nomeAutor;

       function __construct($titulo, $anoDePublicacao, $autor) {

      } 
  
}
Agora, para você exibir as informações do seu objeto da classe Livro, no PHP, existe um método mágico chamado __toString(); Você terá que sobrescrever este método em sua classe Livro. Ficaria desta form
Class Livro 
{

    function __toString() {
         return $this->titulo . ' - ' . $this->anoDePublicacao . ' ' . $this->nomeAutor;
   }
}

Quando você der um echo em qualquer objeto, o método __toString() será invocado;

Agora é só você brincar um pouco..

Faça mais pesquisas.

Link to comment
Share on other sites

  • 0
Olá Heloa, seja bem vinda ao forúm.

Bom, a principio seria interessante você pesquisar um pouco sobre OOP em PHP.

Sempre que colar algum código fonte no post, é interessante clicar no botão inserir code.

Vamos lá..

PHP não é uma linguagem typada, então o que você fez aqui não deve funcionar:

private String titulo;
private int anoDePublicacao;
private int nomeAutor;
No PHP para você declarar um construtor de uma classe, a sintaxe é:
function __construct() {
}
No em sua classe ficaria>
Class Livro 
{
       function __construct() {

      } 
  
}
Bom, não faz sentido declarar um construtor sem uma implementação. Então, com você mencionou, você precisa passar parâmetros para seu construtor: Ficaria algo do tipo:
Class Livro 
{

    private $titulo;
    private $anoDePublicacao;
    private $nomeAutor;

       function __construct($titulo, $anoDePublicacao, $autor) {

      } 
  
}
Agora, para você exibir as informações do seu objeto da classe Livro, no PHP, existe um método mágico chamado __toString(); Você terá que sobrescrever este método em sua classe Livro. Ficaria desta form
Class Livro 
{

    function __toString() {
         return $this->titulo . ' - ' . $this->anoDePublicacao . ' ' . $this->nomeAutor;
   }
}

Quando você der um echo em qualquer objeto, o método __toString() será invocado;

Agora é só você brincar um pouco..

Faça mais pesquisas.

Valeu Romero!

Obrigada pelas dicas, clareou bastante, já sei como fazer. Obrigada!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...