(PHP 5.5.0, PECL >= 3.0.0a1)
IntlCalendar::isWeekend — Whether a certain date/time is in the weekend
Object oriented style
$date = NULL
  ] )Procedural style
Returns whether either the obejctʼs current time or the provided timestamp occur during a weekend in this objectʼs calendar system.
This function requires ICU 4.4 or later.
calThe IntlCalendar resource.
date
      An optional timestamp representing the number of milliseconds since the
      epoch, excluding leap seconds. If NULL, this objectʼs current time is
      used instead.
     
A bool indicating whether the given or this objectʼs time occurs in a weekend.
   The value FALSE may also be returned on failure, for instance after giving
   a date out of bounds on non-lenient mode; use exceptions or query
   intl_get_error_code() to disambiguate.
  
Example #1 IntlCalendar::isWeekend()
<?php
ini_set('date.timezone', 'Europe/Lisbon');
$cal = new IntlGregorianCalendar(NULL, 'en_US');
$cal->set(2013, 6 /* July */, 7); // a Sunday 
var_dump($cal->isWeekend()); // true
var_dump($cal->isWeekend(strtotime('2013-07-01 00:00:00'))); // false, Monday
$cal = new IntlGregorianCalendar(NULL, 'ar_SA');
$cal->set(2013, 6 /* July */, 7); // a Sunday 
var_dump($cal->isWeekend()); // false, Sunday not in weekend in this calendar