3v4l.org

run code in 300+ PHP versions simultaneously
<?php //Пополнить справочник названиями полей. $fields=[4=>'value', 6=>'feedback', 11=>'city']; //Пополнить справочник значениями element_id с текстовыми значениями $text_fields = [6]; $src=[ [ 'entry_id' => 3, 'element_id' => 4, //Эта строка сериализована криво //'value' => 'a:2:{i:2;s:14:"Имя";i:4;s:18:"Фамилия";}' 'value' => 'a:2:{i:2;s:6:"Имя";i:4;s:14:"Фамилия";}' ], [ 'entry_id' => 3, 'element_id' => 6, 'value' => 'Тестовый отзыв' ], [ 'entry_id' => 3, 'element_id' => 11, 'value' => 'a:1:{i:2;s:16:"г. Москва";}' ], ]; $dst = []; foreach($src as $row){ $field = $fields[$row['element_id']]; if (in_array($row['element_id'], $text_fields)) { $dst[$row['entry_id']][$field] = $row['value']; } else { $dst[$row['entry_id']][$field] = implode(" ", unserialize($row['value'])); } } print_r($dst);
Output for 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0
Array ( [3] => Array ( [value] => Имя Фамилия [feedback] => Тестовый отзыв [city] => г. Москва ) )
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:
60.89 ms | 407 KiB | 5 Q