Converter objeto em string php

Converter objeto em string php
Para qualquer linguagem de programação orientada, os conceitos de objetos e seqüências são fundamentais de blocos de construção. PHP conta com objetos e cordas para fornecer flexibilidade e recursos. Este artigo discutirá como você pode converter um objeto PHP em uma string usando vários métodos.

Usando a função print_r ()

O primeiro técnico que podemos usar para converter um objeto em uma string é a função print_r. A função leva o valor a ser impresso e um parâmetro de retorno. O parâmetro de retorno é um valor booleano.

Por exemplo, para converter um objeto em uma string usando a função print_r, podemos fornecer o objeto como o primeiro parâmetro (valor a ser impresso na tela) e um booleano true como o segundo parâmetro.

A sintaxe da função é como mostrado:

print_r (valor misto $, bool $ return);

Por padrão, o valor booleano é definido como falso. Se não for fornecido, a função print_r imprimirá o valor da variável fornecida.

Vamos dar um exemplo simples. Criaremos uma aula de carro simples com duas variáveis: o nome e o preço. Criaremos um construtor com o nome e preço como parâmetros e variáveis.

Finalmente, criamos um objeto da classe de carro e damos a eles dados de amostra para o nome e o preço. Para converter o objeto em uma string, usaremos a função print_r, como mostrado no exemplo abaixo:

Classe Car
nome $ protegido;
preço protegido de $;
Função pública __construct ($ nome, $ price)
$ this-> nome = $ nome;
$ this-> preço = $ preço;


$ mycar = novo carro ("Ford", 25000);
$ obj_str = print_r ($ mycar, true);
echo $ obj_str;
?>

Depois de executar o exemplo acima, você deve ver e sair com os objetados convertidos em uma string.

Métodos Magic PHP (_ToString ())

A segunda técnica que podemos usar para converter um objeto em uma string é a função _toString (). Esta função é definida como parte da função mágica do PHP. A função _ToString () não aceita argumentos e tem um valor de retorno da string.

O exemplo a seguir mostra como usar a função para retornar um objeto como uma string.

Classe Car
Nome privado $;
preço privado de $;
Função pública __construct ($ nome, $ price)
$ this-> nome = $ nome;
$ this-> preço = $ preço;

função pública __toString ()
Retornar "Modelo de carro $ this-> nome. Preço $ this-> preço ";


$ mycar = novo carro ("Ford", "25000");
eco $ mycar;
?>

O exemplo acima é intimamente idêntico ao anterior. No entanto, usamos o método __toString para converter o objeto em uma string. A saída do exemplo acima é como mostrado:

Modelo de carro Ford. Preço 25000

Se você remover o método __toString () e tentar executar o comando acima, você deverá ver um erro como:

Erro fatal do PHP: Erro não capturado: Objeto da classe Car não pôde ser convertido em string.

Função php serialize ()

Vamos agora olhar para uma maneira mais não convencional de converter um objeto em uma string. O método serialize () converte um valor especificado em um fluxo de bytes. Esta função é adequada quando você precisa armazenar uma sessão. Usando a função Serialize (), podemos passar no objeto e retornar uma sequência de bytes.

Um exemplo de uso pode ser mostrado no código abaixo.

Classe Car
privado $ name = "ford";
Privado $ preço = "25000 $";
função pública que_car ()
eco "Modelo: $ this-> Nome e preço: $ this-> preço", "\ n";


$ mycar = carro novo;
$ mycar-> qual_car ();
$ serializado = serialize ($ mycar);
eco $ serializado;
?>

Depois de executar o código acima, o código deve retornar uma string serializada como mostrado:

Modelo: Ford e Preço: 25000 $
O: 3: "CAR": 2: S: 7: "*Nome"; S: 4: "Ford"; S: 8: "*Price"; S: 6: "25000 $";

Fechamento

Este tutorial mostra várias maneiras de converter um objeto em uma string usando PHP. Lembre -se de que há mais nas funções do que discutidas neste tutorial. Olhe na documentação para descobrir mais.