anakadote/vcard

这个VCard PHP类可以生成包含一些数据的vCard。当使用iOS设备时,它将以.ics文件格式导出,因为iOS设备不支持默认的.vcf文件。

1.2.6 2016-09-14 16:53 UTC

README

Latest Stable Version License

这个VCard PHP类可以生成包含一些数据的vCard。当使用iOS设备(iOS 8以下版本)时,它将以.ics文件格式导出,因为iOS设备不支持默认的.vcf文件。

用法

安装

{
    "require": {
        "anakadote/vcard": "1.2.*"
    }
}

使用Composer时,将以下内容添加到您的composer.json文件中。

示例

use JeroenDesloovere\VCard\VCard;

// define vcard
$vcard = new VCard();

// define variables
$lastname = 'Desloovere';
$firstname = 'Jeroen';
$additional = '';
$prefix = '';
$suffix = '';

// add personal data
$vcard->addName($lastname, $firstname, $additional, $prefix, $suffix);

// add work data
$vcard->addCompany('Siesqo');
$vcard->addJobtitle('Web Developer');
$vcard->addEmail('info@jeroendesloovere.be');
$vcard->addPhoneNumber(1234121212, 'PREF;WORK');
$vcard->addPhoneNumber(123456789, 'WORK');
$vcard->addAddress(null, null, 'street', 'worktown', null, 'workpostcode', 'Belgium');
$vcard->addURL('http://www.jeroendesloovere.be');

$vcard->addPhoto(__DIR__ . '/landscape.jpeg');

// return vcard as a string
//return $vcard->getOutput();

// return vcard as a download
return $vcard->download();

查看所有示例或检查VCard类

解析示例

解析器可以传递一个VCard字符串,如下所示

$parser = new VCardParser($vcardString);
echo $parser->getCardAtIndex(0)->fullname; // Prints the full name.

或者使用带有文件名的工厂方法

$parser = VCardParser::parseFromFile('path/to/file.vcf');
echo $parser->getCardAtIndex(0)->fullname; // Prints the full name.

对框架的支持

我创建了一个Symfony Bundle:VCard Bundle

例如,在Laravel中使用

return Response::make(
    $this->vcard->getOutput(),
    200,
    $this->vcard->getHeaders(true)
);

文档

类有很好的内部文档。如果您使用了一个不错的IDE,您会看到每个方法都用PHPDoc进行了文档说明。

贡献

贡献是欢迎的,并且将被完全认可

拉取请求

添加或更新代码

  • 编码语法 - 请保持代码语法与包中的其他部分一致。
  • 添加单元测试! - 如果您的补丁没有测试,则不会被接受。
  • 记录任何行为更改 - 确保README和任何其他相关文档都保持最新。
  • 考虑我们的发布周期 - 我们试图遵循semver。随机破坏公共API不是一种选择。
  • 创建主题分支 - 请不要要求我们从您的master分支中拉取。
  • 每个功能一个拉取请求 - 如果您想做更多的事情,请发送多个拉取请求。
  • 发送一致的历史记录 - 确保您的拉取请求中的每个单独提交都有意义。如果您在开发过程中必须做出多个中间提交,请在提交之前将它们压缩。

问题

用于错误报告或代码讨论。

有关如何在help.github.com上与GitHub一起工作的更多信息。

致谢

许可

该模块受MIT许可协议的许可。简而言之,此许可证允许您做任何事情,只要版权声明仍然存在。