1
resposta

O cmd alega que não tenho memória suficiente para realizar o __get

O cmd prompt está apresentando o seguinte erro:

PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 57344 bytes) in C:\Users\mathe\Downloads\PHP POO\revisao\Projeto\src\Modelo\Endereco.php on line 53

Não faço ideia de como resolver. Poderiam me ajudar?

meu código:

<?php

 require 'Autoload.php';

 use Alura\Banco\Modelo\Endereco;

 $endereco1 = new Endereco('Ocidental', 'Centro', 'Sq15Q17', '56');

 $endereco = new Endereco('Brasilia', 'Asa Norte', 'Shn Qd5', '710');

 echo $endereco1->bairro;


 /*echo $endereco1 . PHP_EOL;

 echo $endereco;*/

Código da classe endereco:

<?php

namespace Alura\Banco\Modelo;

    class Endereco
    {
        private $cidade;

        private $bairro;

        private $rua;

        private $numero;

            public function __construct (string $cidade, string $bairro, string $rua, string $numero)
            {
                $this->cidade = $cidade;

                $this->bairro = $bairro;

                $this->rua = $rua;

                $this->numero = $numero;
            }

            public function getCidade()
            {
                return $this->cidade;
            }

            public function getBairro()
            {
                return $this->bairro;
            }

            public function getRua()
            {
                return $this->rua;
            }

            public function getNumero()
            {
                return $this->numero;
            }

            public function __toString(): string
            {
                return "{$this->rua}, {$this->numero}, {$this->bairro}, {$this->cidade}";
            }

            public function __get(string $nomeAtributo)
            {
                $metodo = 'get' . ucfirst($nomeAtributo);

                return $this-> $metodo;
            }

    }
1 resposta

Oppaa, tudo beleza?? Tem uma pergunta semelhante no stackoverflow vou te mandar o link pois creio que pode te ajudar: https://stackoverflow.com/questions/561066/fatal-error-allowed-memory-size-of-134217728-bytes-exhausted-codeigniter-xml

Nele, a solução proposta é alterar o memory_limit, onde vc pode colocar um valor maior dentro do php.ini