yanisdon Posted September 21, 2007 Share Posted September 21, 2007 Hi there, I've got the following issue: I've menaged to parse RSS data from a given XML file into a PHP object with SimpleXML. As this is quiet a trivial task, so far so good. At a particluar spot within the code I have the following object instances. Here's a print_r($obj); Two first two object instances are equal because they have the same attributes and values, wheras the third one is different. What I like to be doing here before going any further is to get rid of duplicates and only take unequal instances to proced with my methods and code. My idea now is to compare a particular attribute (E.g. $obj->title) and if that attribute appears to exist more than once, get rid of the/all duplicate/s. Something like DISTINCT in SQL if that make sense How can I get that going? Cheers! stdClass Object ( [type] => cbd [uid] => 1 [status] => 1 [promote] => 1 [sticky] => 1 [title] => Test 1 [body] => This CATS (Creating Accessible Teaching & Support) [teaser] => This CATS (Creating Accessible Teaching & Support) [ftype] => RSS [fversion] => 2.0 [fencoding] => UTF-8 [flanguage] => en [fmanagingeditor] => 2 [cmetadata_size] => 0 [taxonomy] => Array ( [tags] => Array ( [19] => [46] => [45] => Curriculum, Inclusive design, Curriculum, Learning design approaches [5] => ) ) ) stdClass Object ( [type] => cbd [uid] => 1 [status] => 1 [promote] => 1 [sticky] => 1 [title] => Test 1 [body] => This CATS (Creating Accessible Teaching & Support) [teaser] => This CATS (Creating Accessible Teaching & Support) [ftype] => RSS [fversion] => 2.0 [fencoding] => UTF-8 [flanguage] => en [fmanagingeditor] => 2 [cmetadata_size] => 0 [taxonomy] => Array ( [tags] => Array ( [19] => [46] => [45] => Curriculum, Inclusive design, Curriculum, Learning design approaches [5] => ) ) ) stdClass Object ( [type] => cbd [uid] => 1 [status] => 1 [promote] => 1 [sticky] => 1 [title] => Test 2 [body] => The use and efficacy of a simulation model [teaser] => The use and efficacy of a simulation model [ftype] => RSS [fversion] => 2.0 [fencoding] => UTF-8 [flanguage] => en [fmanagingeditor] => 2 [cmetadata_size] => 0 [taxonomy] => Array ( [tags] => Array ( [19] => Engineering and Related Technologies, Civil Engineering [46] => [45] => Flexible learning, Learning designs, Simulation-based learning [5] => ) ) ) Quote Link to comment https://forums.phpfreaks.com/topic/70113-solved-object-comparison/ Share on other sites More sharing options...
yanisdon Posted September 25, 2007 Author Share Posted September 25, 2007 Here's the solution: I could also do something similar to serialize but use hash instead. As I add the objects to an array, I have the hash being the array key, then before I add an object to the array I see if the hash already exists with array_key_exists(), if it does then I don't add it. Actually I don't even need to check if the hash is already set, I can just add them all and duplicate keys will overwrite, so in the end my array will have only distinct objects. Quote Link to comment https://forums.phpfreaks.com/topic/70113-solved-object-comparison/#findComment-354653 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.