3v4l.org

run code in 300+ PHP versions simultaneously
<?php $myarray = array( 0 => array( "Order" => array("PO" => "TR11214", "OrderID" => 242856952012), "Sales Tax" => array("PO" => "TR11214", "SalesTaxAmount" => 0.00), "Payment" => array("PaymentPO" => "TR11215", "PaymentAmount" => 45.00), "Transaction" => array("TransPO" => "TR11211", "TransactionPrice" => 91.17) ), 1 => array( "Order" => array("PO" => "TR11214", "OrderID" => 242856952012), "Sales Tax" => array("PO" => "TR11214", "SalesTaxAmount" => 0.00), "Payment" => array("PaymentPO" => "TR11216", "PaymentAmount" => 70.00), "Transaction" => array("TransPO" => "TR11212", "TransactionPrice" => 180.41) ), 2 => array( "Order" => array("PO" => "TR11214", "OrderID" => 242856952012), "Sales Tax" => array("PO" => "TR11214", "SalesTaxAmount" => 0.00), "Payment" => array("PaymentPO" => "TR11216", "PaymentAmount" => 70.00), "Transaction" => array("TransPO" => "TR11213", "TransactionPrice" => 209.99) ) ); echo "there are " . count(array_unique(array_column($myarray, 'Order'), SORT_REGULAR)) . "unique Orders\n"; $non_unique_keys = ['Transaction', 'Payment']; $output = array(); foreach (array_keys($myarray[0]) as $key) { if (in_array($key, $non_unique_keys)) { $output[$key] = array_unique(array_column($myarray, $key), SORT_REGULAR); } else { $output[$key] = $myarray[0][$key]; } } print_r($output);
Output for git.master, git.master_jit, rfc.property-hooks
there are 1unique Orders Array ( [Order] => Array ( [PO] => TR11214 [OrderID] => 242856952012 ) [Sales Tax] => Array ( [PO] => TR11214 [SalesTaxAmount] => 0 ) [Payment] => Array ( [0] => Array ( [PaymentPO] => TR11215 [PaymentAmount] => 45 ) [1] => Array ( [PaymentPO] => TR11216 [PaymentAmount] => 70 ) ) [Transaction] => Array ( [0] => Array ( [TransPO] => TR11211 [TransactionPrice] => 91.17 ) [1] => Array ( [TransPO] => TR11212 [TransactionPrice] => 180.41 ) [2] => Array ( [TransPO] => TR11213 [TransactionPrice] => 209.99 ) ) )

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
50.65 ms | 1635 KiB | 4 Q