English 中文(简体)
Unserializing an API return object (PHP/Ebay API)
原标题:
  • 时间:2010-06-01 16:55:50
  •  标签:
  • php
  • ebay-api

I have been working with the Ebay api for a project and have found it great. I have however found a problem now, more PHP related.

When I read my items from Ebay, I store a bunch of details in the database. Currently, just for the sake of it really, I serialize the whole return object and store it in the database in a related table.

The idea being, that when I display my information, I have all the details to hand should I need them. The problem arises in that the pricing information is always in a sub object.

[ConvertedAdjustmentAmount] => __PHP_Incomplete_Class Object
    (
        [__PHP_Incomplete_Class_Name] => eBayAmountType
        [_] => 0
        [currencyID] => USD
    )

As you can see when I unserialize my object, my cunning plan falls foul of the Incomplete class problem. I have checked the following question, without success.

forcing access to __PHP_Incomplete_Class object properties

The main issue lies, as far as I can see, in that the price class is stored in the Ebay api, so how do I recreate it?

I have been reading this page, http://uk3.php.net/manual/en/function.unserialize.php and trying to figure out, unserialize_callback_func which I can t figure out either, so any help would be appreciated!

最佳回答

What piece of code defines the class is irrelevant. What matters is that the code be loaded at the time you deserialize the object. As long as you ve loaded the eBay API (in the same way you would when fetching a new object) before you try deserializing an existing one, it should work fine.

问题回答

If you don t have access to the libraries then you ll need to deal with the information prior to serializing your data. You can convert your object to a stdClass or shuffle it off to a class of your choice (one that you control, presumably). Depending on how much information you have - or how deep the information is - you could also store it as an array.





相关问题
Brute-force/DoS prevention in PHP [closed]

I am trying to write a script to prevent brute-force login attempts in a website I m building. The logic goes something like this: User sends login information. Check if username and password is ...

please can anyone check this while loop and if condition

<?php $con=mysql_connect("localhost","mts","mts"); if(!con) { die( unable to connect . mysql_error()); } mysql_select_db("mts",$con); /* date_default_timezone_set ("Asia/Calcutta"); $date = ...

定值美元

如何确认来自正确来源的数字。

Generating a drop down list of timezones with PHP

Most sites need some way to show the dates on the site in the users preferred timezone. Below are two lists that I found and then one method using the built in PHP DateTime class in PHP 5. I need ...

Text as watermarking in PHP

I want to create text as a watermark for an image. the water mark should have the following properties front: Impact color: white opacity: 31% Font style: regular, bold Bevel and Emboss size: 30 ...

How does php cast boolean variables?

How does php cast boolean variables? I was trying to save a boolean value to an array: $result["Users"]["is_login"] = true; but when I use debug the is_login value is blank. and when I do ...

热门标签