【问题标题】:Very easy to fix mistake in PHP (classes) [closed]很容易修复 PHP(类)中的错误 [关闭]
【发布时间】:2012-09-15 10:36:23
【问题描述】:

我刚开始使用类,但是当我执行包含该类的页面时,我的脚本就停止了。另外,代码和功能本身并不完整,只是在一些基础上添加了一些代码。

class doVersus
{
        private var $p1health;
        private var $p2health;
        private var $dmg;
        public var $longlog;
        function __construct($hp1m, $hp1c, $hp2m, $hp2c, $stg, $prev_log, $hp2n)
        {

                if($stg==0)
                {
                        $longlog = "The battle has begun..<br>".$_GET['user'];
                        //startBattle($hp1m, $hp1c, $hp2m, $hp2c, $stg, $prev_log, $hp2n);
                        echo $longlog;
                }else{
                        $longlog = $longlog."TURN: ".$stg."<br>";
                        //startBattle($hp1m, $hp1c, $hp2m, $hp2c, $stg, $prev_log, $hp2n);
                        echo $longLog;

        }

        private function startBattle($hp1m, $hp1c, $hp2m, $hp2c, $stg, $prev_log, $hp2n)
        {
                if($hp1c<0 || $hp2c<0)
                {
                        $longlog = $longlog."The battle has ended!<br>"
                        stopBattle($hp1c, $hp2c);
                }else{
                        echo $longlog;
                }
        }
        private function doDmg($a)
        {
                $longlog = $longlog." strikes ".$hp2n." with ".$dmg." normal damage";
        }
        private function stopBattle($a, $b)
        {
                echo $longlog." Battle has ended.";
        }
}

【问题讨论】:

  • PHP 有错误信息。万一出错,先搞定。

标签: php class function


【解决方案1】:

最后,您的构造函数 (__construct) 中缺少 }

【讨论】:

  • 确实,else{ 似乎没有关闭。
  • 修复了,仍然给出 HTTP-500 错误代码 :(
  • 我不确定$longlog var 应该包含什么,但您必须使用$this-&gt;longlong 来引用类变量而不是局部变量。在doDmg()stopBattle() 中,$longlog 未定义。
【解决方案2】:

貌似else的构造函数没有关闭

【讨论】:

    【解决方案3】:

    您没有在构造函数中关闭else 语句。

    那么,在 PHP5 中,您不需要通过在声明中写入 var 来声明变量。

    【讨论】:

      猜你喜欢
      • 2014-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-24
      • 1970-01-01
      • 2021-11-20
      • 1970-01-01
      相关资源
      最近更新 更多