Подтвердить что ты не робот

Как преобразовать объект в строку в php

Возможный дубликат:
PHP ToString() эквивалент

как преобразовать объект в строку в php

На самом деле, я имею дело с API веб-сервисов. Я хочу использовать вывод одного API в качестве ввода для другого API. когда я пытаюсь сделать это, я получил такую ​​ошибку: Catchable fatal error: Объект класса std не мог быть преобразован в строку в C: \...

это результат первого API:: stdClass Object ([document_number] = > 10ba60) теперь я хочу, чтобы только этот номер использовался в качестве входа для второго AP

print_r и _string() оба не работают в моем случае

4b9b3361

Ответ 1

Вы можете настроить, как ваш объект представлен в виде строки, реализуя метод __toString() в вашем классе, так что когда ваш объект type cast as a string (явный тип cast $str = (string) $myObject; или автоматический echo $myObject), вы можете управлять включенным и строковым форматом.

Если вы хотите отображать только данные объекта, метод выше будет работать. Если вы хотите сохранить свой объект в сеансе или базе данных, вам нужно сериализовать его, поэтому PHP знает, как восстановить ваш экземпляр.

Некоторый код, демонстрирующий разницу:

class MyObject {

    protected $name = 'JJ';

    public function __toString() {
            return "My name is: {$this->name}\n";
    }

}

$obj = new MyObject;

echo $obj;
echo serialize($obj);

Вывод:

Меня зовут: JJ

О: 8: "MyObject": 1: {s: 7: "* Название"; s: 2: "JJ";}

Ответ 2

Используйте оператор литья (string)$yourObject;

Ответ 3

у вас есть функция print_r DOC

Ответ 5

В вашем случае вы должны просто использовать

$firstapiOutput->document_number

в качестве входа для второго api.