public static function htmlEncode( $data, $valuesOnly = TRUE, $charset = NULL ) {
		if ( $charset === NULL ) {
			$charset = 'UTF-8';
		}
		$d = [];
		foreach ( $data as $key => $value ) {
			if ( ! $valuesOnly && is_string( $key ) ) {
				$key = htmlspecialchars( $key, ENT_QUOTES|ENT_SUBSTITUTE, $charset );
			}
			if ( is_string( $value ) ) {
				$d[ $key ] = htmlspecialchars( $value, ENT_QUOTES|ENT_SUBSTITUTE, $charset );
			} elseif ( is_array( $value ) ) {
				$d[ $key ] = static::htmlEncode( $value, $valuesOnly, $charset );
			} else {
				$d[ $key ] = $value;
			}
		}
		
		return $d;
	}
public static function htmlEncode( $data, $valuesOnly = TRUE, $charset = NULL ) {
		if ( $charset === NULL ) {
			$charset = 'UTF-8';
		}
		$d = [];
		foreach ( $data as $key => $value ) {
			if ( ! $valuesOnly && is_string( $key ) ) {
				$key = htmlspecialchars( $key, ENT_QUOTES|ENT_SUBSTITUTE, $charset );
			}
			if ( is_string( $value ) ) {
				$d[ $key ] = htmlspecialchars( $value, ENT_QUOTES|ENT_SUBSTITUTE, $charset );
			} elseif ( is_array( $value ) ) {
				$d[ $key ] = static::htmlEncode( $value, $valuesOnly, $charset );
			} else {
				$d[ $key ] = $value;
			}
		}
		
		return $d;
	}
public static function htmlEncode ( $ data , $ valuesOnly = TRUE , $ charset = NULL ) { if ( $ charset === NULL ) { $ charset = 'UTF-8' ; } $ d = [ ] ; foreach ( $ data as $ key => $ value ) { if ( ! $ valuesOnly && is_string ( $ key ) ) { $ key = htmlspecialchars ( $ key , ENT_QUOTES | ENT_SUBSTITUTE , $ charset ) ; } if ( is_string ( $ value ) ) { $ d [ $ key ] = htmlspecialchars ( $ value , ENT_QUOTES | ENT_SUBSTITUTE , $ charset ) ; } elseif ( is_array ( $ value ) ) { $ d [ $ key ] = static :: htmlEncode ( $ value , $ valuesOnly , $ charset ) ; } else { $ d [ $ key ] = $ value ; } } return $ d ; }
Encodes special characters in an array of strings into HTML entities.
Only array values will be encoded by default.
If a value is an array, this method will also encode it recursively.
Only string values will be encoded.

@param array $data data to be encoded
@param boolean $valuesOnly whether to encode array values only. If false,
both the array keys and array values will be encoded.
@param string $charset the charset that the data is using. If not set,
[[\yii\base\Application::charset]] will be used.

@return array the encoded data
@see http://www.php.net/manual/en/function.htmlspecialchars.php
Encodes special characters in an array of strings into HTML entities . Only array values will be encoded by default . If a value is an array this method will also encode it recursively . Only string values will be encoded .