Server IP : 185.61.155.44 / Your IP : 3.128.199.197 Web Server : LiteSpeed System : Linux premium145.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : antommvy ( 964) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/antommvy/anton.lat/wp-content/plugins/wp-smushit/core/integrations/../ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php namespace Smush\Core; class Array_Utils { public function array_hash( $array, $keys = array() ) { $hash = 0; if ( is_array( $array ) ) { foreach ( $array as $key => $value ) { if ( is_array( $value ) ) { $value_hash = $this->array_hash( $value, array_merge( $keys, array( $key ) ) ); } else { $prefix = join( '~', $keys ); $value_hash = crc32( $prefix . $value ); } $hash += $value_hash; } } return $hash; } public function get_array_value( $haystack, $key, $default_value = null ) { if ( ! is_array( $key ) ) { $key = array( $key ); } if ( ! is_array( $haystack ) ) { return $default_value; } $value = $haystack; foreach ( $key as $key_part ) { $value = isset( $value[ $key_part ] ) ? $value[ $key_part ] : $default_value; } return $value; } public function put_array_value( &$haystack, $value, $keys ) { if ( ! is_array( $keys ) ) { $keys = array( $keys ); } $pointer = &$haystack; foreach ( $keys as $key ) { if ( ! isset( $pointer[ $key ] ) ) { $pointer = empty( $pointer ) ? array() : $pointer; $pointer[ $key ] = array(); } $pointer = &$pointer[ $key ]; } $pointer = $value; } public function ensure_array( $array ) { return empty( $array ) || ! is_array( $array ) ? array() : $array; } /** * WARNING: This trick works only for arrays in which all the values are valid keys. * @see https://stackoverflow.com/a/8321701 * * @param $array scalar[] * * @return array Unique array */ public function fast_array_unique( $array ) { if ( ! is_array( $array ) ) { return array(); } return array_keys( array_flip( $array ) ); } }