php – How to create a json from my object?

Question:

I have a Product object that I can't turn into json using json_encode :

<?php
class Produto {
    public $nome;
    public $preco;
    public $descricao;

    function transformarJson(){
    }

}

?>

How can I do this?

Answer:

You can do this as follows, in the example I'm using PHP's native json_encode that transforms an object to json format, but in case you want to do the reverse, you can also use the json_decode function:

<?php
class Produto {

    public $nome;
    public $preco;
    public $descricao;

    public function transformarJson(){

        return json_encode($this);

    }
    // Não consigo transformar meu objeto Produto em json usando json_encode

}

$produto = new Produto();

$produto->nome = 'Celular';
$produto->preco = 'R$ 1010,00';
$produto->descricao = 'Celular';

var_dump($produto->transformarJson());

Result:

string(46) "{"nome":"Test","preco":"test","descricao":"e"}" 

test the code here

Scroll to Top