perl-5.34.0
evalbytes EXPR
evalbytes

This function is similar to a string eval, except it always parses its argument (or $_ if EXPR is omitted) as a string of independent bytes.

�����勰�∽�違�� ���絖���� eval ��˩室��⓾����障��������綣����(EXPR ��� �����ャ����������翫�����$_) ���絽吾�˨����ゃ�����篏���勉�勖��絖������������ ��宴����障�����

If called when use utf8 is in effect, the string will be assumed to be encoded in UTF-8, and evalbytes will make a temporary copy to work from, downgraded to non-UTF-8. If this is not possible (because one or more characters in it require UTF-8), the evalbytes will fail with the error stored in $@.

use utf8 ��������鴻�勉����������若�喝�冴�������������� ���絖������� UTF-8 ��с����潟�潟�若����������⓾��������篁勐����������� evalbytes ��壔����� UTF-8 ��˨����⓾�潟�違�㋘�若��������筝���������ŝ�潟����若��篏������障����� (UTF-8 ���綽�荀���ʋ��絖�������������������) ���������筝��櫝�純�ɱ�翫����� evalbytes ��壠け��������������í�若�� $@ ��˩��膊<�������障�����

Bytes that correspond to ASCII-range code points will have their normal meanings for operators in the string. The treatment of the other bytes depends on if the 'unicode_strings" feature is in effect.

ASCII ��勛����蚊�勛❻�垬��臀勉��絲上�������������ゃ����壔�� ���絖������勖��篏���̹�≪����☁��絽吾�勖����潟�������<�障����� �����勌����勉����ゃ����勖�宴����壔�� <'unicode_strings" feature|feature/'unicode_strings' 罘����> ��������鴻�勐�翫����� ��í�������˩��絖������障�����

Of course, variables that are UTF-8 and are referred to in the string retain that:

�����<��������UTF-8 ��ф��絖������勌賢��у����с�������⓾�����紊���違�壔����勉�障�障�с��:

 my $a = "\x{100}";
 evalbytes 'print ord $a, "\n"';

prints

�����������勉�壔��罨<��茵◐ず������

 256

and $@ is empty.

$@ ��夌Ã��˨�ŝ����障�����

Source filters activated within the evaluated code apply to the code itself.

eval �����������潟�若�������ф����鴻�˨�ŝ�c����純�若�鴻����c�˨�帥�壔�潟�若����ŭ����̹�ñ����������障�����

evalbytes is available starting in Perl v5.16. To access it, you must say CORE::evalbytes, but you can omit the CORE:: if the "evalbytes" feature is enabled. This is enabled automatically with a use v5.16 (or higher) declaration in the current scope.

evalbytes ��� Perl v5.16 ��������ñ���櫝�純�с����� ��������˨�≪�壔�祉�鴻�������˨�� CORE::evalbytes ���������綽�荀������������障�������� "evalbytes" 罘���� ��� �����鴻�ŝ�� CORE:: ��������ャ�с����障����� ��������夌憜����勉�鴻�潟�若����� use v5.16 (��障����壔�����篁ヤ��) 絎h������������� ��ɱ�������������鴻�˨�ŝ����障�����