-1

ファイルに保存している文字列を取得serialize($result->response)しましたが、そこから変数が必要です。どうすればそれらにアクセスできますか?私はf.exを試しました:

$result->response['StatusCode']
$result->response[StatusCode]

大文字と小文字を区別しないolso

しかし、それは機能していません

このようにファイルに保存しています

write_to_file( "debug.txt"、 "注文の詳細:\ n \ n" .serialize($ result-> response)。 "\ n \ n");

そしてファイルにはこれがあります:

a:1:{s:8: "OpenPayU"; a:2:{s:14: "HeaderResponse"; a:3:{s:10: "SenderName"; s:8: "checkout"; s:7 :"Version"; s:3: "1.0"; s:9: "Algorithm"; s:3: "MD5";} s:19: "OrderDomainResponse"; a:1:{s:21: "OrderRetrieveResponse" ; a:10:{s:5: "ResId"; s:32: "31cc3099884b92879ca144c5048ad07f"; s:6: "Status"; a:1:{s:10: "StatusCode"; s:16: "OPENPAYU_SUCCESS" ;} s:13: "MerchantPosId"; s:5: "37857"; s:9: "SessionId"; s:32: "77bd6bf3a1f029e250dbdccd59348bcc"; s:14: "CustomerRecord"; a:6:{s:10 :"CustomerId"; s:8: "nyi3iw6v"; s:5: "Email"; s:28: "meil@meil.com.pl"; s:5: "Phone"; s:15: "(+ 48)786265656 "; s:9:" FirstName "; s:5:" mieta "; s:8:"LastName "; s:5:" mieta "; s:8:" Language "; s:2:" pl ";} s:11:" OrderStatus "; s:21:" ORDER_STATUS_COMPLETE "; s:13:" PaymentStatus "; s:18:" PAYMENT_STATUS_END "; s:10:" PaydAmount "; s:4:" 3000 "; s:12:" CurrencyCode "; s:3:" PLN "; s:7:" PayType "; s:1: "t";}}}}

4

2 に答える 2

2

データのシリアル化を解除してみてください。シリアル化された文字列がオブジェクトではなく配列になっているようです。エラーが発生していますか?

于 2012-08-26T00:22:21.607 に答える
1

彼らは説明を終えていません。

配列をserialize()してどこかに保存した後、それを使用したい場合は、unserialize()して再び配列にする必要があります

そうなるだろう

$file = file_get_contents('debug.txt');
$array = unserialize($file);
echo $array['StatusCode'];
于 2012-08-26T00:33:37.107 に答える