For getting the unique values i am using unique values. Below is the code i am using
array_unique($results_external);
aasort($results_external,"created_on");
$returns_buy_external[]=array_reverse($results_external, true);
If i use the code like this, below is the error i am getting
A PHP Error was encountered Severity: Notice
Message: Array to string conversion
Filename: models/product_model.php
Line Number: 3550
3550 line is array_unique($results_external);
Can anyone help me, why it is getting error like this and how to solve it?
results_external sample format coming is below
Array
(
[0] => Array
(
[id] => 144
[name] => test
[slug] => test
[images] => {"9eebd0f69772dd3bdf8c787864437c85":{"filename":"9eebd0f69772dd3bdf8c787864437c85.png","alt":"TRESemme Smooth and Shine","caption":""}}
[track_stock] => 1
[seo_title] => ttt
[qty] => 0
[product_type] => 0
[price] => 0.00
[saleprice] => 0.00
[external_links] => http://test.com
[external_price] => 285.00
[external_saleprice] => 285.00
[created_on] => 2013-11-08 15:03:24
)
)
As per the docs, array_unique
compares elements as strings by default. This means your 2D array is being converted to an array of strings (all being "Array"
and generating the array-to-string Notice) or which only one can be returned as unique.
Use the SORT_REGULAR
flag to compare the elements as they are, but be aware that arrays are only considered equal if they have the same key-value pairs.
Example:
print_r(array_unique($array, SORT_REGULAR));