объединять и конвертировать файлы vCard в CSV

Мне нужно преобразовать пару файлов контактов (vCard) в один файл CSV с помощью PHP

Я уже пробовал этот скрипт в nodejs: https://gist.github.com/sriranggd/738325

кроме того, я не хочу использовать онлайн-решение и устанавливать какое-либо программное обеспечение, поэтому мне было интересно, смогу ли я найти скрипт, который, как я понимаю, будет запускаться локально, предпочтителен в PHP или NodeJS

0

Решение

Попробовав пару скриптов в интернете (php & nodejs) Я решил создать свой собственный небольшой скрипт, который берет имя контакта из имени файла, поиск номера телефона с простым регулярным выражением.

<?php
$files = scandir( './contacts' );
$fp = fopen( "./contacts.csv", 'w' );

foreach ($files as $contact) {
if( !preg_match( "/\.vcf$/i", $contact ) ) continue;

$name = str_replace( ".vcf", "", $contact );
if( empty( $name ) ) continue;

$content = file_get_contents( "./contacts/$contact" );

preg_match_all( "/\+?\d+/i", $content, $m);

$row = array($name, end( $m[0] ) );
fputcsv($fp, $row);
}

fclose($fp);
echo "Done";

Этот скрипт очень ограничен, но я хотел поделиться им, так как он может быть легко адаптирован для других целей.

Я надеюсь, что это поможет кому-нибудь когда-нибудь.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]