3v4l.org

run code in 300+ PHP versions simultaneously
<?php $payments = [ ['bookingId' => 1, 'vendorId' => 3, 'amount' => 50], ['bookingId' => 1, 'vendorId' => 3, 'amount' => 85], ['bookingId' => 1, 'vendorId' => 4, 'amount' => 14], ]; $result = array_reduce( $payments, function(array $carry, array $payment): array { $carry[$payment['vendorId']] = $payment; $carry[$payment['vendorId']]['amount'] = ($carry[$payment['vendorId']]['amount'] ?? 0) + $payment['amount']; return $carry; }, [] ); var_dump(array_values($result));
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0
array(2) { [0]=> array(3) { ["bookingId"]=> int(1) ["vendorId"]=> int(3) ["amount"]=> int(170) } [1]=> array(3) { ["bookingId"]=> int(1) ["vendorId"]=> int(4) ["amount"]=> int(28) } }
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.

preferences:
80.99 ms | 407 KiB | 5 Q