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 }