# Convert the internal representation of a Perl scalar to/from UTF-8.
$num_octets = utf8::upgrade($string);
- $success = utf8::downgrade($string[, FAIL_OK]);
+ $success = utf8::downgrade($string[, $fail_ok]);
# Change each character of a Perl scalar to/from a series of
# characters that represent the UTF-8 bytes of each original character.
utf8::encode($string); # "\x{100}" becomes "\xc4\x80"
utf8::decode($string); # "\xc4\x80" becomes "\x{100}"
- $flag = utf8::is_utf8(STRING); # since Perl 5.8.1
- $flag = utf8::valid(STRING);
+ $flag = utf8::is_utf8($string); # since Perl 5.8.1
+ $flag = utf8::valid($string);
=head1 DESCRIPTION
Therefore Encode is recommended for the general purposes; see also
L<Encode>.
-=item * $success = utf8::downgrade($string[, FAIL_OK])
+=item * $success = utf8::downgrade($string[, $fail_ok])
Converts in-place the internal representation of the string from
I<UTF-X> to the equivalent octet sequence in the native encoding (Latin-1
byte algorithm.
Fails if the original I<UTF-X> sequence cannot be represented in the
-native 8 bit encoding. On failure dies or, if the value of C<FAIL_OK> is
+native 8 bit encoding. On failure dies or, if the value of I<$fail_ok> is
true, returns false.
Returns true on success.
Therefore Encode is recommended for the general purposes; see also
L<Encode>.
-=item * $flag = utf8::is_utf8(STRING)
+=item * $flag = utf8::is_utf8($string)
-(Since Perl 5.8.1) Test whether STRING is marked internally as encoded in
+(Since Perl 5.8.1) Test whether I<$string> is marked internally as encoded in
UTF-8. Functionally the same as Encode::is_utf8().
-=item * $flag = utf8::valid(STRING)
+=item * $flag = utf8::valid($string)
-[INTERNAL] Test whether STRING is in a consistent state regarding
+[INTERNAL] Test whether I<$string> is in a consistent state regarding
UTF-8. Will return true if it is well-formed UTF-8 and has the UTF-8 flag
-on B<or> if STRING is held as bytes (both these states are 'consistent').
+on B<or> if I<$string> is held as bytes (both these states are 'consistent').
Main reason for this routine is to allow Perl's test suite to check
that operations have left strings in a consistent state. You most
probably want to use utf8::is_utf8() instead.