src/CssManager.php
function array_merge_recursive_unique($array1, $array2)
	{
		$arrays = func_get_args();
		$narrays = count($arrays);
		$ret = $arrays[0];
		for ($i = 1; $i < $narrays; $i ++) {
			foreach ($arrays[$i] as $key => $value) {
				if (((string) $key) === ((string)((int) $key))) { // integer or string as integer key - append
					$ret[] = $value;
				} else { // string key - merge
					if (is_array($value) && isset($ret[$key])) {
						$ret[$key] = $this->array_merge_recursive_unique($ret[$key], $value);
					} else {
						$ret[$key] = $value;
					}
				}
			}
		}
		return $ret;
	}
function array_merge_recursive_unique($array1, $array2)
	{
		$arrays = func_get_args();
		$narrays = count($arrays);
		$ret = $arrays[0];
		for ($i = 1; $i < $narrays; $i ++) {
			foreach ($arrays[$i] as $key => $value) {
				if (((string) $key) === ((string)((int) $key))) { // integer or string as integer key - append
					$ret[] = $value;
				} else { // string key - merge
					if (is_array($value) && isset($ret[$key])) {
						$ret[$key] = $this->array_merge_recursive_unique($ret[$key], $value);
					} else {
						$ret[$key] = $value;
					}
				}
			}
		}
		return $ret;
	}
function array_merge_recursive_unique ( $ array1 , $ array2 ) { $ arrays = func_get_args ( ) ; $ narrays = count ( $ arrays ) ; $ ret = $ arrays [ 0 ] ; for ( $ i = 1 ; $ i < $ narrays ; $ i ++ ) { foreach ( $ arrays [ $ i ] as $ key => $ value ) { if ( ( ( string ) $ key ) === ( ( string ) ( ( int ) $ key ) ) ) { // integer or string as integer key - append $ ret [ ] = $ value ; } else { // string key - merge if ( is_array ( $ value ) && isset ( $ ret [ $ key ] ) ) { $ ret [ $ key ] = $ this -> array_merge_recursive_unique ( $ ret [ $ key ] , $ value ) ; } else { $ ret [ $ key ] = $ value ; } } } } return $ ret ; }
for CSS handling
for CSS handling