nein, nur, dass du nicht weißt, wie man UTF-8 mit PHP ausgibt (tat ich auch nicht, aber 5 Minuten suchen half):
Aha. In PHP habe ich keine Probleme. Dein Skript mal leicht abgewandelt und getestet:
Terminal:
$ echo $LANG
de_DE.UTF-8
Skript:
#!/usr/bin/perl
## file:///tmp/test4.pl
use strict;
my $s;
my $a;
my $useUTF8 = shift;
if ($useUTF8 eq 'u') {
print "benutze UTF-8\n";
use utf8;
}
$s = 'äÄüÜöÖß';
$a = quotemeta($s);
print "-"x14 , ' Start ', "-"x14, "\n";
print $a . "\n";
print `echo $a`;
print "-"x5 , 'binmode(STDOUT, ":utf8");', "-"x5, "\n";
binmode(STDOUT, ":utf8");
$s = 'äÄüÜöÖß';
$a = quotemeta($s);
print $a . "\n";
print `echo $a`;
print "="x36 , "\n\n";
Output 1:
/tmp$ perl test4.pl u
benutze UTF-8
-------------- Start --------------
\�\�\�\�\�\�\�\�\�\�\�\�\�\�
äÄüÜöÖß
-----binmode(STDOUT, ":utf8");-----
\Ã\¤\Ã\\Ã\¼\Ã\\Ã\¶\Ã\\Ã\
äÃüÃöÃÃ
====================================
Output 2:
/tmp$ perl test4.pl
-------------- Start --------------
\�\�\�\�\�\�\�\�\�\�\�\�\�\�
äÄüÜöÖß
-----binmode(STDOUT, ":utf8");-----
\Ã\¤\Ã\\Ã\¼\Ã\\Ã\¶\Ã\\Ã\
äÃüÃöÃÃ
====================================
Brauchbar geht irgendwie anders ...