phpMicroformats - PHP class library for microformats as hCard and hCalendar

About phpMicroformats

phpMicroformats is a PHP class library that helps to generate valid microformats for e.g. calendar events (hCalendar) or vcards (hCard).

About Microformats

Microformats are specific enriched html structures that both helps humans and computers to understand the content. There are formats for calendar events called hCalendar - based on vCalendar format - and vcards - based on vCard format - and more.
The advantage of using microformats is that it is easier for humans to understand but also for computers to interpret and understand. Since it is using wildly accepted standards as (x)html enriched with some specific but limited classes, it can be easily implemented.

Advantages

Disadvantages

Usage of phpMicroformats

Sample code for encoding of a calendar event

<?php
/*
 * example php script that generates and outputs a hcalendar entry
 */

$myEvent = array(
    
'name'         => 'Release party of phpMicroformats',
    
'begin'        => time(),
    
'end'        => time()+2*60*60// duration: 2 hours

    
'location'    => array (
        
'street'    => 'Main street 15b',
        
'town'        => 'Mainhattan',
        
'zip'        => '22912',
        
'state'        => 'Main country',
        
'country'    => 'Countrinidad'    
    
),

    
'url'        => 'http://enarion.net/phpmicroformats/'
);

require_once(
dirname(__FILE__).'/../src/phpMicroformats.class.php');

echo 
phpMicroformats::createHCalendar($myEvent);

?>

Sample code for encoding of a vcard

<?php
/*
 * example php script that generates and outputs a hcard entry
 */

$myPersonalData = array(
    
'name'         => 'Steve F. Better',
    
'email'     => 'abuse-me@this-host-is-not-existing.info',
    
'org'         => array(
        
'name'         => 'The virtual company',
        
'title'     => 'General chief of all'
    
),

    
'location'    => array (
        
'street'    => 'Main street 15b',
        
'town'        => 'Mainhattan',
        
'zip'        => '22912',
        
'state'        => 'Main country',
        
'country'    => 'Countrinidad'    
    
),    

    
'phone'        => array(
        
'home'        => '+1 123 66 71 292',
        
'cell'        => '+1 123 88 72 121'    
    
),

    
'photo'        => 'http://enarion.net/img/phpsitemapng-170px.jpg',
        
    
'im'        => array(
        
'skype'        => 'echo-chinese',
        
'aim'        => 'ShoppingBuddy'
    
)
);

require_once(
dirname(__FILE__).'/../src/phpMicroformats.class.php');

echo 
phpMicroformats::createHCard($myPersonalData);

?>

Requirements for phpMicroformats

There are no requirements except PHP 4.x.