Automattic\WooCommerce\Internal\Abilities\REST

RestAbilityFactory::dedupe_enum │ private static │ WC 1.0

Remove duplicate enum values while preserving order.

Uses JSON encoding for fingerprinting to correctly handle mixed scalar types (1 vs '1'), nulls, and complex values (arrays).

Метод класса: RestAbilityFactory{}

Хуков нет.

Возвращает

array. Deduplicated enum values.

Использование

$result = RestAbilityFactory::dedupe_enum( $values ): array;
$values(массив) (обязательный)
Enum values.

Код RestAbilityFactory::dedupe_enum() WC 11.2.2

private static function dedupe_enum( array $values ): array {
	$seen   = array();
	$unique = array();
	foreach ( $values as $value ) {
		$fingerprint = wp_json_encode( $value );
		if ( isset( $seen[ $fingerprint ] ) ) {
			continue;
		}
		$seen[ $fingerprint ] = true;
		$unique[]             = $value;
	}
	return $unique;
}