Как реализовать метод giveMoney?

Как реализовать публичный метод giveMoney который передает деньги от одного пользователя к другому (нельзя передать больше денег чем есть на балансе)? Во время передачи денег выводится сообщение “Пользователь name перечислил $amount пользователю name” Пользователю нельзя изменить баланс любым другим способом кроме giveMoney.

<?php
header('Content-Type: text/html; charset=utf-8');

class User{
private $name;
private $balance;
private $amount = 150;

function __construct($name,$balance){
    $this->name = $name;
    $this->balance = $balance;
}

public function printStatus(){
    echo "У пользователя ".$this->name." сейчас на счету ".$this->balance;
}

public function giveMoney(){
    //
    //
    //
}

}

$user1 = new User("Max",100);
$user2 = new User("Anton",1000);

Ответы (1 шт):

Автор решения: Максим Пронь
public function giveMoney($user, $amount){
    if($amount > $this->balance){
        echo 'Недостаточно средств!'."<br/>";
        exit;
    }
    else{
        $this->balance = $this->balance - $amount;
        $user->balance = $user->balance + $amount;
        echo "Пользователь ".$this->name." перечислил ".$amount." пользователю ".$user->name."<br/>";
    }

}

}
→ Ссылка