Perl의 언어에서 필자는 hash을 한 가지와 다른 것 또는 필수 요소 목록 간의 매핑으로 정의합니다. 설명서에 명시된 바와 같이. 해시는 기본 데이터 형식입니다. 키를 사용하여 내용에 액세스합니다.해시 또는 매핑이 PHP에서 작동하는 방식
기본적으로 해시는 배열에 가깝습니다. 초기화 작업도 매우 비슷합니다.
Perl에서 매핑을 만들려면 다음과 같이 비교할 수 있습니다.
my %map = (
A => [qw(a b c d)],
B => [qw(c d f a)],
C => [qw(b d a e)],
);
my @keys = keys %map;
my %matches;
for my $k (1 .. @keys) {
$matches{$_} |= 2**$k for @{$map{ $keys[$k-1] }};
}
for (sort keys %matches) {
my @found;
for my $k (1 .. @keys) {
push @found, $keys[$k-1] if $matches{$_} & 2**$k;
}
print "$_ found in ", (@found? join(',', @found) : 0), "\n";
}
Output:
a found in A,C,B
b found in A,C
c found in A,B
d found in A,C,B
e found in C
f found in B
난 당신이 차라리 sprintf
사용하는 것이 무엇을하고 있는지 들어 php
흠, 불쾌감은 없지만 이것은 매우 고안된 예입니다. Perl과 PHP에서 실제로 이렇게하려면 문자열 보간을 사용하면됩니다. 더 좋은 예를 생각해 낼 수 있습니까? – kojiro
업데이트 된 내용보기 – hwnd