* example1: header->getAddr_s('to').
* example2: header->getAddr_s(array('to', 'cc', 'bcc'))
*/
- function getAddr_s($arr, $separator = ',') {
+ function getAddr_s($arr, $separator = ',',$encoded=false) {
$s = '';
if (is_array($arr)) {
foreach($arr as $arg) {
- if ($this->getAddr_s($arg)) {
+ if ($this->getAddr_s($arg, $separator, $encoded)) {
$s .= $separator . $result;
}
}
$s = ($s ? substr($s, 2) : $s);
} else {
- eval('$addr = $this->' . $arr . ';') ;
+ $addr = $this->{$arr};
+ //eval('$addr = $this->' . $arr . ';') ;
if (is_array($addr)) {
foreach ($addr as $addr_o) {
if (is_object($addr_o)) {
- $s .= $addr_o->getAddress() . $separator;
+ if ($encoded) {
+ $s .= $addr_o->getEncodedAddress() . $separator;
+ } else {
+ $s .= $addr_o->getAddress() . $separator;
+ }
}
}
$s = substr($s, 0, -strlen($separator));
} else {
if (is_object($addr)) {
- $s .= $addr->getAddress();
+ if ($encoded) {
+ $s .= $addr->getEncodedAddress();
+ } else {
+ $s .= $addr->getAddress();
+ }
}
}
}