2014-10-25 2 views
-1
my @TeamRecipients = qw(
    [email protected] 
    [email protected] 
    [email protected] 
    [email protected] 
); 



sub sendEmailToTeam 
{ 
    my ($title, $msg) = @_; 

    my $email = new Common::Email(
    'Sender' => '[email protected]', 
    'To' => \@TeamRecipients, 
    'Subject' => $title, 
    'Message' => $msg 
    );  

    if (not $ENV{'NIGHTLY_RUN_DEBUG_MODE'}) 
    { 
     $email->send(); 
    } 
} 

위의 코드에서 도메인은 내 회사 이름이며 개별 팀 구성원은 아무 문제없이 전자 메일을 수신하지만 전자 메일 주소는 다음과 같이 결합되어 있기 때문에 동일한 스레드에서 회신 할 수 없습니다. " "[email protected], [email protected], [email protected], [email protected]"대신 [email protected] [email protected] [email protected] [email protected] "이메일 주소를 분할하는 방법; in a qw

나는

my @TeamRecipients = qw(
    [email protected]; 
    [email protected]; 
    [email protected]; 
    [email protected]; 
); 

에 TeamRecipients를 수정했지만 작동하지 않았다. 팀원도 초기 이메일을받지 못했습니다.

는 또한 우는 소리

my @MyTeamRecipients = map { split(/;/, $_)} @TeamRecipients; 

같은 중간 배열을 소개하지만 중 하나가 작동하지 않았다.

전문가,

해결책이 있습니까?

감사합니다, 라자

+0

,'split'는 텍스트 문자열에서 배열을 만들기위한 것입니다; 이미 배열이 있지만 텍스트 문자열을 사용하여 배열에 가입해야합니다. –

+1

메일 헤더에서 전자 메일 주소를 구분하는 표준 문자는 세미콜론이 아닌 쉼표입니다. (Outlook UI가 세미콜론으로 표시한다고 생각하지만 여전히 쉼표를 사용합니다.) – tobyink

+4

Common :: Email과 같은 소리는 버그입니다. – ikegami

답변

3

사용 join : BTW

'To' => join(';', @TeamRecipients), 
+1

'Common :: Email' (CPAN에없는 homebuilt?)에 배열 참조가 필요한 경우, 'To'=> [join ...]' – TLP

+0

힌트를 부탁드립니다. 그러나 불행히도 그들 중 누구도 내 문제를 해결하지 못합니다. – Rajah

+1

* "문제가 해결되지 않았습니다."* 문제를 진단하는 데 필요한 정보가 충분하지 않습니다. 모듈'Common :: Email'에 대한 정보를 포함하지 않았으므로 추가 할 수있는 것이 없습니다. – Miller

관련 문제