|
I have this test code:
<html><pre><?
echo "Versión: ".phpversion()."\n\n";
$define_list = array(
'PRODUCT_LIST_MODEL' => 0,
'PRODUCT_LIST_NAME' => 0,
'PRODUCT_LIST_MANUFACTURER' => 1,
'PRODUCT_LIST_PRICE' => 0,
'PRODUCT_LIST_QUANTITY' => 1,
'PRODUCT_LIST_WEIGHT' => 1,
'PRODUCT_LIST_IMAGE' => 1,
'PRODUCT_LIST_BUY_NOW' => 1
);
arsort($define_list);
echo "*** arsort(): ";
print_r($define_list);
echo "\n";
$define_list = array(
'PRODUCT_LIST_MODEL' => 0,
'PRODUCT_LIST_NAME' => 0,
'PRODUCT_LIST_MANUFACTURER' => 1,
'PRODUCT_LIST_PRICE' => 0,
'PRODUCT_LIST_QUANTITY' => 1,
'PRODUCT_LIST_WEIGHT' => 1,
'PRODUCT_LIST_IMAGE' => 1,
'PRODUCT_LIST_BUY_NOW' => 1
);
asort($define_list);
echo "*** asort(): ";
print_r($define_list);
echo "\n";
?>
In two different servers I obtain different results:
Versión: 4.1.2
*** arsort(): Array
(
[PRODUCT_LIST_MANUFACTURER] => 1
[PRODUCT_LIST_QUANTITY] => 1
[PRODUCT_LIST_WEIGHT] => 1
[PRODUCT_LIST_IMAGE] => 1
[PRODUCT_LIST_BUY_NOW] => 1
[PRODUCT_LIST_MODEL] => 0
[PRODUCT_LIST_NAME] => 0
[PRODUCT_LIST_PRICE] => 0
)
*** asort(): Array
(
[PRODUCT_LIST_MODEL] => 0
[PRODUCT_LIST_NAME] => 0
[PRODUCT_LIST_PRICE] => 0
[PRODUCT_LIST_MANUFACTURER] => 1
[PRODUCT_LIST_QUANTITY] => 1
[PRODUCT_LIST_WEIGHT] => 1
[PRODUCT_LIST_IMAGE] => 1
[PRODUCT_LIST_BUY_NOW] => 1
)
Versión: 4.2.2
*** arsort(): Array
(
[PRODUCT_LIST_QUANTITY] => 1
[PRODUCT_LIST_IMAGE] => 1
[PRODUCT_LIST_MANUFACTURER] => 1
[PRODUCT_LIST_BUY_NOW] => 1
[PRODUCT_LIST_WEIGHT] => 1
[PRODUCT_LIST_PRICE] => 0
[PRODUCT_LIST_NAME] => 0
[PRODUCT_LIST_MODEL] => 0
)
*** asort(): Array
(
[PRODUCT_LIST_MODEL] => 0
[PRODUCT_LIST_PRICE] => 0
[PRODUCT_LIST_NAME] => 0
[PRODUCT_LIST_BUY_NOW] => 1
[PRODUCT_LIST_IMAGE] => 1
[PRODUCT_LIST_QUANTITY] => 1
[PRODUCT_LIST_MANUFACTURER] => 1
[PRODUCT_LIST_WEIGHT] => 1
)
According to some user contributed notes (manual itself says nothing about
this) I can't expect to maintain the relative order of keys. Yet I can't
find the logic of the algorithm. Why do I get different key sortings in
versions 4.1.2 and 4.2.2?
--
--
-- Álvaro G. Vicario - Burgos, Spain
-- |