Curso PHP

AULA 03

Orientação a Objetos

OO vs Procedural

Programação orientada a objetos (também conhecida pela sua sigla POO) é um modelo de análise, projeto e programação de sistemas de software baseado na composição e interação entre diversas unidades de software chamadas de objetos.

Quais são os elementos

do meu contexto?

Quais seus atributos?

Quais ações eles realizam?

<?php

 

    class Veiculo {}

 

 

 

    class Veiculo {

        public $modelo;

        public $cor;

        public $placa;        

    }

 

 

   

    class Veiculo {

 

        public $modelo;

        public $cor;

        public $placa;

 

        public function acelerar ($variacao)

        {

        }     

 

       public function acenderFarol ()

        {

        }     

    }

 

<?php

    // index.php

 

    include('class/Veiculo.php');

    $veiculo = new Veiculo();

    $veiculo->acenderFarol();

    echo $veiculo->placa;

 

 

Objeto vs Classe

A classe Veiculo* teria a mesma estrutura em um sistema de aluguel de veículos?

* Sem acento, pois nomes de classes não tem acento

   

     poo/

     |

     |---- index.php   

     |---- classes/

             |---- Veiculo.php

             |---- Carro.php

             |---- Moto.php

 

 

Herança

   

    class Carro extends Veiculo{

        

        public $numeroDePortas;

 

        public function limparParabrisa ()

        {

        }   

 

    }

 

<?php

    // index.php

 

    include('class/Veiculo.php');

    include('class/Carro.php');

 

    $carro = new Carro();

    $carro->acenderFarol();

    echo $carro->placa;

    // print_r($carro);

 

Public

Private

Static

Protected

   

    __construct() {}

 

 

 

 

   

$this;

 

 

 

Getters and Setters

Banco de dados

O que é um SGBD?

Por que Mysql?

$sudo apt-get install mysql-serve

Comandos SQL

Básicos

Structured Query Language

Ver bancos

SHOW DATABASES;

 

Criar um novo banco

CREATE DATABASE aula03;

 

Usar um banco

USE aula03;

 

 

Criar uma tabela

CREATE TABLE carros (
  id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  modelo VARCHAR(30) NOT NULL,
  cor VARCHAR(30) NOT NULL,
  placa VARCHAR(7) UNIQUE,
  fabricacao DATE
)

Ver tabelas

SHOW TABLES;

 

Detalhes da tabela

DESC carros;

 

 

Inserir um registro

INSERT INTO carros (model, cor, placa, fabricacao)
VALUES ('Fusca', 'Branco', 'HUY0980', '1981-10-02');

Listar registros

SELECT * FROM carros;

ou 

SELECT modelo, placa FROM carros;

ou 

SELECT * FROM carros WHERE placa = 'HUY0980';

Ver também

- DELETE;

- UPDATE;

- ALTER TABLE;

- DROP TABLE; 

- DROP DATABASE;

- TRUNCATE TABLE;

Crie uma tabela e insira manualmente alguns carros

Exercício

 

    <?php


        $mysqli = new mysqli('localhost', 'user', 'pass', 'aula03');

       $sql = "SELECT `modelo`, `placa` FROM `carros`";

       $query = $mysqli->query($sql);


       while ($dados = $query->fetch_array()) {
            echo 'Modelo: ' . $dados['modelo'] ;
            echo '<br />';
            echo 'Placa: ' . $dados['placa'] ;
        }


       echo '<br />';
       echo 'Registros encontrados: ' . $query->num_rows;

       $query->close();

 

 

    <?php


        $con = new PDO("mysql:host=localhost;dbname=aula03", "root", "");
        $con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

        $rs = $con->query("SELECT `modelo`, `placa` FROM `carros`");
        while($row = $rs->fetch(PDO::FETCH_OBJ)) {
            echo $row->modelo . "<br />";
            echo $row->placa . "<br />";
        }

       echo 'Registros encontrados: '. $rs->rowCount();

 


       while ($dados = $query->fetch_array()) {
            echo 'Modelo: ' . $dados['modelo'] ;
            echo '<br />';
            echo 'Placa: ' . $dados['placa'] ;
        }


       echo '<br />';
       echo 'Registros encontrados: ' . $query->num_rows;

       $query->close();

 

Curso PHP - Aula 03

By Carlos José

Curso PHP - Aula 03

Curso lecionado na UECE.

  • 749