PHP类和方法初学者
我开始学习PHP类和方法,作为实践练习,我决定创建一个名为Bank Account的类,并尝试实现DisplayBalance()、drawings()和Transaction()方法 大多数情况下都能正常工作,我可以显示余额,也可以从账户中加减“货币”,但我还想做的是,当货币提取超过初始余额时,删除余额回显消息,并将其替换为“无更多货币”回显消息 此时会弹出错误消息,但也会显示余额。有人能给我指出一个正确的方向吗?当我开始享受我的课程和方法的经验时,请不要太沮丧 我的代码:PHP类和方法初学者,php,class,methods,Php,Class,Methods,我开始学习PHP类和方法,作为实践练习,我决定创建一个名为Bank Account的类,并尝试实现DisplayBalance()、drawings()和Transaction()方法 大多数情况下都能正常工作,我可以显示余额,也可以从账户中加减“货币”,但我还想做的是,当货币提取超过初始余额时,删除余额回显消息,并将其替换为“无更多货币”回显消息 此时会弹出错误消息,但也会显示余额。有人能给我指出一个正确的方向吗?当我开始享受我的课程和方法的经验时,请不要太沮丧 我的代码: <?php
<?php
class BankAccount{
public $balance = 10.5;
public function DisplayBalance(){
if(($this->balance)<0){
return false;
}else{
return 'Balance: '.$this->balance.'</br>';
}
}
public function Withdraw($amount){
if (($this->balance)<$amount){
echo 'Not Enough Founds: '.'</br>';
}else{
$this->balance=$this->balance - $amount;
}
}
public function Transaction($trans){
$this->balance=$this->balance + $trans;
}
}
$alex = new BankAccount;
$alex->Withdraw(12);
echo $alex->DisplayBalance();
$abdul = new BankAccount;
$abdul->Transaction(10);
echo $abdul->DisplayBalance();
?>
您首先要做的是收回(12),发生的情况如下:
if (($this->balance)<$amount){
echo 'Not Enough Founds: '.'</br>';
if(($this->余额)公共功能提取($amount){
$this->balance=$this->balance-$amount;
}
公共功能显示平衡(){
如果($this->balance<0){
返回“资金不足:”。;
}否则{
返回“余额:”。$this->Balance.”;
}
}
或者你可以试试这个
class BankAccount{
public $balance = 10.5;
public $error = false;
public function DisplayBalance(){
if($this->error){
$this->error = false;
return 'Not Enough Funds: '.'</br>';
}else{
return 'Balance: '.$this->balance.'</br>';
}
}
public function Withdraw($amount){
if (($this->balance)<$amount){
$this->error = true;
}else{
$this->balance=$this->balance - $amount;
}
}
}
$alex = new BankAccount;
$alex->Withdraw(12);
echo $alex->DisplayBalance();
class银行账户{
公共美元余额=10.5;
public$error=false;
公共功能显示平衡(){
如果($this->error){
$this->error=false;
返回“资金不足:”。;
}否则{
返回“余额:”。$this->Balance.”;
}
}
公共功能提取(金额){
如果($this->balance)错误=true;
}否则{
$this->balance=$this->balance-$amount;
}
}
}
$alex=新银行账户;
$alex->draw(12);
echo$alex->DisplayBalance();
请提供您得到的输出?以及您想要的输出?您不应该在方法中回显任何内容。而是让它们返回字符串。使您的代码更易于维护。可能如果($this->balance)balance)
public function Withdraw($amount){
if (($this->balance)<$amount){
// $this->balance=0; you can zero your balance out
// $this->balance -= $amount; or just make it -1.5 so display() function would
// do its job
echo 'Not Enough Funds: '.'</br>';
}else{
$this->balance=$this->balance - $amount;
}
}
public function Withdraw($amount){
$this->balance=$this->balance - $amount;
}
public function DisplayBalance(){
if($this->balance < 0){
return 'Not Enough Funds: '.'</br>';
}else{
return 'Balance: '.$this->balance.'</br>';
}
}
class BankAccount{
public $balance = 10.5;
public $error = false;
public function DisplayBalance(){
if($this->error){
$this->error = false;
return 'Not Enough Funds: '.'</br>';
}else{
return 'Balance: '.$this->balance.'</br>';
}
}
public function Withdraw($amount){
if (($this->balance)<$amount){
$this->error = true;
}else{
$this->balance=$this->balance - $amount;
}
}
}
$alex = new BankAccount;
$alex->Withdraw(12);
echo $alex->DisplayBalance();