code: protected function extractRange( $definition, $min = null, $max=null )
      {
          $resultSet = array();
  
          if ( substr( $definition, 0, 1 ) === '*' )
          {
              // We need ranges otherwise a full set can not be created
              if ( $min === null || $max === null )
              {
                  return false;
              }
  
              for( $i=$min; $i<=$max; ++$i )
              {
                  $resultSet[] = $i;
              }
  
              return $resultSet;
          }
  
          // Remove the stepping part if it is available
          if ( ( $position = strpos( $definition, '/' ) ) !== false )
          {
              $definition = substr( $definition, 0, $position );
          }
  
          // Split the definition into list elements. At least one elements needs
          // to be there
          $ranges = explode( ',', $definition );
  
          foreach( $ranges as $range )
          {
              // There might be a '-' sign which indicates a real range, split it accordingly.
              $entries = explode( '-', $range );
              // If there is only one entry just add it to the result array
              if ( count( $entries ) === 1 )
              {
                  $resultSet[] = (int)$entries[0];
              }
              // If a range is defined it needs to be calculated
              else
              {
                  $high = (int)max( $entries );
                  $low  = (int)min( $entries );
  
                  for( $i=$low; $i<=$high; ++$i )
                  {
                      $resultSet[] = $i;
                  }
              }
          }
  
          return $resultSet;
      }
docs: Take a cron column as argument and return an array containing every item
  in range of the definition
  
  @param mixed $definition Cron column/definition to use for extraction
  @return array Array containing everything defined in the given range. Or
  bool false if the range is not restricted And no ranges are specified.