1

エラー ログのために、オブジェクトを文字列としてデータベースに保存したいと考えています。-メソッドをトリガーするため、シリアライゼーションを使用したくありません__sleep()。を使用せずにオブジェクトを文字列として保存する別の方法はありますserialize()か?

4

4 に答える 4

2
class Foo {
  public function __toString() {
    return "Hooray";
  }
}

echo new Foo;

たぶん

echo var_export(new Foo, true);
于 2012-07-24T09:37:53.647 に答える
2

これを行うことができます:

ob_start();
var_dump($x);
ob_get_contents();
于 2012-07-24T09:38:04.443 に答える
1

あなたはこれを試すことができます

$string = print_r($x, true);

データベースに保存$stringするには、文字列を圧縮します。

$string = gzcompress($string);

解凍して印刷するに$stringは:

echo '<pre>'.gzuncompress($string).'</pre>';
于 2012-07-25T09:27:26.987 に答える
0

json_encode他の解決策は-function(docu )かもしれません。

編集:それの良いところは、ログファイルを自動的に分析する必要がある場合、ほぼすべてのプログラミング言語で簡単に解析できることです;-)

于 2012-07-24T09:42:51.210 に答える