合并 vCard 文件并将其转换为 CSV
merge and convert vCard files to CSV
我需要使用 PHP
将几个联系人 (vCard) 文件转换为一个 CSV 文件
我已经在 nodejs 中尝试过这个脚本:https://gist.github.com/sriranggd/738325
此外,我不想使用在线解决方案,也不想安装任何软件,所以我想知道是否可以找到一个我理解的脚本 运行 它在 PHP 中更适合本地使用或 NodeJS
在互联网上尝试了几个脚本(php 和 nodejs)后,我决定创建自己的小脚本,它从文件名中获取联系人姓名,搜索 phone 号码用一个简单的正则表达式。
<?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";
This script is very limited, but I wanted to share it since it can easily adapted for other usages.
我希望有一天能对某人有所帮助。
我需要使用 PHP
将几个联系人 (vCard) 文件转换为一个 CSV 文件我已经在 nodejs 中尝试过这个脚本:https://gist.github.com/sriranggd/738325
此外,我不想使用在线解决方案,也不想安装任何软件,所以我想知道是否可以找到一个我理解的脚本 运行 它在 PHP 中更适合本地使用或 NodeJS
在互联网上尝试了几个脚本(php 和 nodejs)后,我决定创建自己的小脚本,它从文件名中获取联系人姓名,搜索 phone 号码用一个简单的正则表达式。
<?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";
This script is very limited, but I wanted to share it since it can easily adapted for other usages.
我希望有一天能对某人有所帮助。