3v4l.org

run code in 300+ PHP versions simultaneously
<?php //using json_encode() and json_decode() just for getting exact array structure what you have posted $array = array( 0=>Array( "product1"=>json_decode(json_encode(Array( "product_id"=>"9416", "price"=>"110.00" ))), "product2"=>json_decode(json_encode(Array( "product_id"=>"9431", "price"=>"100.00" ))) ), 1=>Array( "product1"=>json_decode(json_encode(Array( "product_id"=>"1254", "price"=>"75.00" ))), "product2"=>json_decode(json_encode(Array( "product_id"=>"9431", "price"=>"62.00" ))) ), 2=>Array( "product1"=>json_decode(json_encode(Array( "product_id"=>"9416", "price"=>"45.00" ))), "product2"=>json_decode(json_encode(Array( "product_id"=>"9431", "price"=>"50.00" ))) ), 3=>Array( "product1"=>json_decode(json_encode(Array( "product_id"=>"9416", "price"=>"60.00" ))), "product2"=>json_decode(json_encode(Array( "product_id"=>"9431", "price"=>"25.00" ))) ), ); function comparePrice($a,$b) { $a_price = $a['product1']->price + $a['product2']->price; $b_price = $b['product1']->price + $b['product2']->price; if ($a_price ==$b_price) return 0; return ($a_price<$b_price)? -1:1; } usort($array,'comparePrice'); print_r($array);
Output for 5.6.38, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
Array ( [0] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 60.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 25.00 ) ) [1] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 45.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 50.00 ) ) [2] => Array ( [product1] => stdClass Object ( [product_id] => 1254 [price] => 75.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 62.00 ) ) [3] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 110.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 100.00 ) ) )
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Array ( [0] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 60.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 25.00 ) ) [1] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 45.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 50.00 ) ) [2] => Array ( [product1] => stdClass Object ( [product_id] => 1254 [price] => 75.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 62.00 ) ) [3] => Array ( [product1] => stdClass Object ( [product_id] => 9416 [price] => 110.00 ) [product2] => stdClass Object ( [product_id] => 9431 [price] => 100.00 ) ) )

preferences:
218.25 ms | 405 KiB | 211 Q