home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 May / Chip_2000-05_cd1.bin / zkuste / Perl / ActivePerl-5.6.0.613.msi / 䆊䌷䈹䈙䏵-䞅䞆䞀㡆䞃䄦䠥 / _73ac9396623278255a03530916a49f0d < prev    next >
Text File  |  2000-03-23  |  3KB  |  95 lines

  1.  
  2. <HTML>
  3. <HEAD>
  4. <TITLE>utf8 - Perl pragma to enable/disable UTF-8 in source code</TITLE>
  5. <LINK REL="stylesheet" HREF="../Active.css" TYPE="text/css">
  6. <LINK REV="made" HREF="mailto:">
  7. </HEAD>
  8.  
  9. <BODY>
  10. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  11. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  12. <STRONG><P CLASS=block> utf8 - Perl pragma to enable/disable UTF-8 in source code</P></STRONG>
  13. </TD></TR>
  14. </TABLE>
  15.  
  16. <A NAME="__index__"></A>
  17. <!-- INDEX BEGIN -->
  18.  
  19. <UL>
  20.  
  21.     <LI><A HREF="#name">NAME</A></LI><LI><A HREF="#supportedplatforms">SUPPORTED PLATFORMS</A></LI>
  22.  
  23.     <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
  24.     <LI><A HREF="#description">DESCRIPTION</A></LI>
  25.     <LI><A HREF="#see also">SEE ALSO</A></LI>
  26. </UL>
  27. <!-- INDEX END -->
  28.  
  29. <HR>
  30. <P>
  31. <H1><A NAME="name">NAME</A></H1>
  32. <P>utf8 - Perl pragma to enable/disable UTF-8 in source code</P>
  33. <P>
  34. <HR>
  35. <H1><A NAME="supportedplatforms">SUPPORTED PLATFORMS</A></H1>
  36. <UL>
  37. <LI>Linux</LI>
  38. <LI>Solaris</LI>
  39. <LI>Windows</LI>
  40. </UL>
  41. <HR>
  42. <H1><A NAME="synopsis">SYNOPSIS</A></H1>
  43. <PRE>
  44.     use utf8;
  45.     no utf8;</PRE>
  46. <P>
  47. <HR>
  48. <H1><A NAME="description">DESCRIPTION</A></H1>
  49. <P>WARNING: The implementation of Unicode support in Perl is incomplete.
  50. See <A HREF="../lib/Pod/perlunicode.html">the perlunicode manpage</A> for the exact details.</P>
  51. <P>The <CODE>use utf8</CODE> pragma tells the Perl parser to allow UTF-8 in the
  52. program text in the current lexical scope.  The <CODE>no utf8</CODE> pragma
  53. tells Perl to switch back to treating the source text as literal
  54. bytes in the current lexical scope.</P>
  55. <P>This pragma is primarily a compatibility device.  Perl versions
  56. earlier than 5.6 allowed arbitrary bytes in source code, whereas
  57. in future we would like to standardize on the UTF-8 encoding for
  58. source text.  Until UTF-8 becomes the default format for source
  59. text, this pragma should be used to recognize UTF-8 in the source.
  60. When UTF-8 becomes the standard source format, this pragma will
  61. effectively become a no-op.</P>
  62. <P>Enabling the <CODE>utf8</CODE> pragma has the following effects:</P>
  63. <UL>
  64. <LI>
  65. Bytes in the source text that have their high-bit set will be treated
  66. as being part of a literal UTF-8 character.  This includes most literals
  67. such as identifiers, string constants, constant regular expression patterns
  68. and package names.
  69. <P></P>
  70. <LI>
  71. In the absence of inputs marked as UTF-8, regular expressions within the
  72. scope of this pragma will default to using character semantics instead
  73. of byte semantics.
  74. <PRE>
  75.     @bytes_or_chars = split //, $data;  # may split to bytes if data
  76.                                         # $data isn't UTF-8
  77.     {
  78.         use utf8;                       # force char semantics
  79.         @chars = split //, $data;       # splits characters
  80.     }</PRE>
  81. <P></P></UL>
  82. <P>
  83. <HR>
  84. <H1><A NAME="see also">SEE ALSO</A></H1>
  85. <P><A HREF="../lib/Pod/perlunicode.html">the perlunicode manpage</A>, <A HREF="../lib/bytes.html">the bytes manpage</A></P>
  86. <TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
  87. <TR><TD CLASS=block VALIGN=MIDDLE WIDTH=100% BGCOLOR="#cccccc">
  88. <STRONG><P CLASS=block> utf8 - Perl pragma to enable/disable UTF-8 in source code</P></STRONG>
  89. </TD></TR>
  90. </TABLE>
  91.  
  92. </BODY>
  93.  
  94. </HTML>
  95.