MIME::Base64::encode a UTF-8

Honza Pazdziora adelton na fi.muni.cz
Středa Září 7 10:57:14 MEST 2005


On Wed, Sep 07, 2005 at 09:19:28AM +0200, Aben Siatris wrote:
> > 
> > Promenna $y je definovana az pote, co zacne platit use utf8.
> 
> to je sice pravda, ale mimo bloku utf8 a to je podstatne.
> jednoduchy test vychadzajuci z vasho kodu.
> 
> #!/usr/bin/perl
> 
> my $x = 'křížala';
> use utf8;
> my $y = 'křížala';
> 
> 
> if (utf8::is_utf8($x))
> {
> 	print "x je utf8\n";
> }
> 
> if (utf8::is_utf8($y))
> {
> 	print "y je utf8\n";
> }

my $x = 'křížala';
use utf8;
my $y = 'křížala';
if (utf8::is_utf8($x))
{
        print "x je utf8\n";
}

if (utf8::is_utf8($y))
{
        print "y je utf8\n";
}

$x = $y;
if (utf8::is_utf8($x))
{
        print "x (po prirazeni) je utf8\n";
        print "takze je videt, ze use utf8 nema zadnou spojitost s promennou, ale s hodnotou\n";
}
__END__

> > > use encoding 'utf8';
> > > use open ':utf8';
> > > use utf8;
> > 
> > ... use encoding 'utf8' a use utf8 jedno jsou ...
> 
> dokaz o opaku:

[...]

> a potom skuste s odkomentovanim "use encoding 'utf8';"

Mel jsem na mysli z hlediska chovani literalu ve zdrojaku. Ano,
use encoding 'utf8' dela zaroven i use open ':utf8', ':std';

> > Tohle je zde uplne nepodstatne, protoze v tom kodu neni zadny literal
> > (pominu-li to ">test").
> ano, use encoding a use utf8 uz netreba nikde pisat znova, chape sa na
> cely script

use encoding ano, use utf8 ma lexikalni scope.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
 .project: Perl, mod_perl, DBI, Oracle, large Web systems, XML/XSL, ...
		Only self-confident people can be simple.


Další informace o konferenci Perl