1 <?php
 2 
 3 /*
 4  * This file is part of the ICanBoogie package.
 5  *
 6  * (c) Olivier Laviale <olivier.laviale@gmail.com>
 7  *
 8  * For the full copyright and license information, please view the LICENSE
 9  * file that was distributed with this source code.
10  */
11 
12 namespace ICanBoogie\HTTP;
13 
14 /**
15  * Representation of the `Content-Type` header field.
16  *
17  * <pre>
18  * <?php
19  *
20  * use ICanBoogie\HTTP\ContentTypeHeader;
21  *
22  * $ct = new ContentType;
23  * $ct->type = "text/html";
24  * $ct->charset = "utf-8";
25  * echo $ct;                 // text/html; charset=utf-8
26  *
27  * $ct = ContentType::from("text/plain; charset=iso-8859-1");
28  * echo $ct->type;           // text/plain
29  * echo $ct->charset;        // iso-8859-1
30  * </pre>
31  *
32  * @property $type string Media type of the entity-body.
33  * @property $charset string Charset of the entity-body.
34  *
35  * @see http://tools.ietf.org/html/rfc2616#section-14.17
36  */
37 class ContentTypeHeader extends Header
38 {
39     const VALUE_ALIAS = 'type';
40 
41     /**
42      * Defines the `charset` parameter.
43      */
44     public function __construct($value=null, array $attributes=array())
45     {
46         $this->parameters['charset'] = new HeaderParameter('charset');
47 
48         parent::__construct($value, $attributes);
49     }
50 }