public static function add($key, $value) {

		if(null === $value && is_array($key)) {

			foreach($key as $index => $value) {
				static :: $data[$index] = $value;
			}

			return;
		}

		if(true === isset(static :: $data[$key]) && true === is_array(static :: $data[$key])) {

			if(true === is_array($value)) {
				$value = array_merge(static :: $data[$key], $value);	
			}
			else {
				static :: $data[$key][] = $value;
			}
		}

		static :: $data[$key] = $value;
	}
public static function add($key, $value) {

		if(null === $value && is_array($key)) {

			foreach($key as $index => $value) {
				static :: $data[$index] = $value;
			}

			return;
		}

		if(true === isset(static :: $data[$key]) && true === is_array(static :: $data[$key])) {

			if(true === is_array($value)) {
				$value = array_merge(static :: $data[$key], $value);	
			}
			else {
				static :: $data[$key][] = $value;
			}
		}

		static :: $data[$key] = $value;
	}
public static function add ( $ key , $ value ) { if ( null === $ value && is_array ( $ key ) ) { foreach ( $ key as $ index => $ value ) { static :: $ data [ $ index ] = $ value ; } return ; } if ( true === isset ( static :: $ data [ $ key ] ) && true === is_array ( static :: $ data [ $ key ] ) ) { if ( true === is_array ( $ value ) ) { $ value = array_merge ( static :: $ data [ $ key ] , $ value ) ; } else { static :: $ data [ $ key ] [ ] = $ value ; } } static :: $ data [ $ key ] = $ value ; }
Stores a new piece of data and tries to merge the data if already exists
@param string|array $key
@param mixed $value
Stores a new piece of data and tries to merge the data if already exists