Привет.
Есть такой код:
case 'order':
$orderObj = new orderHandler($first_name, $last_name, $phone, $adress, $email, $message, $order);
$msg = "Имя: {$orderObj->getFirstName()} <br>";
$msg .= "Телефон: {$orderObj->getPhone()} <br>";
$msg .= "Заказ: {$orderObj->getOrder(false)} <br>";
$msg .= "Адрес: {$orderObj->getAdress()} <br>";
break;
}
$arOrder = [
'order' => $orderObj->getOrder(false),
];
И есть метод:
public function getOrder($toString){
$order_string = $this->order;
if($toString){
$ar = array();
foreach($order_string as $item){
if($item == ''){
unset($item);
}
else{
$ar[] = $item;
}
}
$order_string = implode(',', $ar);
return $order_string;
}else{
return $this->order;
}
}
Суть вот в чем: если я один раз вызываю метод $orderObj->getOrder(false), то все работает как надо - на выходе имею либо почищенный массив, либо строчку, сколь угодно раз.
Но стоит вызвать где-нибудь еще, так начинается катавасия - то нотис вылезет, что пытаюсь массив в строку перевести, то наоборот.
Собственно, вывода в любом случае нужно будет 2 - одно для сообщения, а другое для отправки в панель обработки заказов, ткните меня носом в что я делаю не так
пс в методе повводил кучу переменных, думал что напрямую обращаясь к свойству его перезаписываю, но что-то не сработало