PO::match_begin_and_end_newlines( $translation,  $original )

In this article

Source

public static function match_begin_and_end_newlines( $translation, $original ) {
	if ( '' === $translation ) {
		return $translation;
	}

	$original_begin    = "\n" === substr( $original, 0, 1 );
	$original_end      = "\n" === substr( $original, -1 );
	$translation_begin = "\n" === substr( $translation, 0, 1 );
	$translation_end   = "\n" === substr( $translation, -1 );

	if ( $original_begin ) {
		if ( ! $translation_begin ) {
			$translation = "\n" . $translation;
		}
	} elseif ( $translation_begin ) {
		$translation = ltrim( $translation, "\n" );
	}

	if ( $original_end ) {
		if ( ! $translation_end ) {
			$translation .= "\n";
		}
	} elseif ( $translation_end ) {
		$translation = rtrim( $translation, "\n" );
	}

	return $translation;
}

User Contributed Notes

You must log in before being able to contribute a note or feedback.