perlにサブルーチンがあり、配列に特定の要素が含まれているかどうかをチェックし、TRUEを返します。それ以外の場合はfalseを返します。検索された要素http_TestABCは配列に含まれていないため、次のコードはfalseに戻りますが、それでもTRUEを返します。これが発生する理由を理解できません。 。ありがとうございました
#!/usr/bin/perl
use strict;
use warnings;
my @result_listosp; # defines an empty array
$result_listosp[0] = "origin-server-pool-1"; # array has one element
$result_listosp[1] = "http-pool-OSP2"; # array has 10 elements now
my $osp="http_TestABC";
my $status_osp_check= check_if_entity_exists(@result_listosp,$osp);
print $status_osp_check;
sub check_if_entity_exists()
{
my @entityarray = @_;
my $entity = $_[1];
my $status="FALSE";
if ( grep( /^$entity$/, @entityarray ) ) {
$status="TRUE";
return $status;
}
else {
return $status;
}
}