Сообщение от SergeyPetrovA
|
Второй sn будет как мусор, ну и фиг с ним.
|
Ну если так, что тогда париться, да берите все скопом
Это делается элементарно, хоть серверным, хоть клиентским скриптом. Но коли вам надо получить "связанное", а не понять что, то должна быть строгая последовательность в данных, то есть не может встречаться очередной mail до тех пор, пока не будут получены другие поля. То есть сперва перечислены все поля одной сущности, затем другой и т.д. до конца. Посредством РНР и простым обходом массива к примеру так:
$arr = [];
$k = 0;
foreach(file('data.txt', FILE_SKIP_EMPTY_LINES ) as $v) {
if(preg_match('/mail|givenName|sn|telephoneNumber|createTimestamp/', $v)) {
$v = array_map('trim', explode(':', $v));
$arr[$v[0]][$k] = $v[1];
}
if(count(array_column($arr, $k))==5) $k++;
}
echo '<pre>';
print_r($arr);
Для его выполнение требуется РНР не ниже версии 5.5.