【问题标题】:php public function is not working outside of the class [duplicate]php公共函数在类之外不起作用[重复]
【发布时间】:2017-11-15 23:29:53
【问题描述】:

我创建了一个简单的类、变量和公共函数。当我尝试启动一个对象并从类外部的类调用公共函数时,我看不到任何输出。

<?php
error_reporting(E_ALL);
ini_set("error_reporting", 1);

  class Game {
    var name;

    public function show_game() {
      echo $this->name;
    }
  }

  $game = new Game;
  $game->name = "testing game";

  $game->show_game();
?>

据我了解,该功能应该回显测试游戏。但是当我加载页面时,我没有看到任何输出。

【问题讨论】:

  • “但是当我加载页面时我没有看到任何输出。” - 你应该设置错误报告。如果这不会给您带来解析错误,那么我对“不”发生的事情有自己的看法。我会让你接受下面的答案。
  • 你们在下面注意这里吗?再次阅读问题;完全地。特别是“我没有输出”。编辑:我猜不是。
  • “我看不到任何输出。” - 我不相信你error_reporting(E_ALL); ini_set("error_reporting", 1);
  • @Fred-ii- 我想知道需要多长时间才能找到下一个没有输出的语法错误。我尝试在控制台中运行它,whaddaya 知道吗?它没有抱怨!然后我查看了错误报告,大声笑。小心瞄准你的脚……(也就是OP的脚)
  • @Fred-ii- 你在干什么?我没有得到输出或错误,刚刚我发现公司遇到了 wifi 问题,所以我怀疑我的一些问题可能是由于我的文件实际上没有上传到服务器造成的。

标签: php class oop php-5.6 public-method


【解决方案1】:
var name;

语法无效,改为:

var $name;

【讨论】:

    【解决方案2】:

    您似乎只是忘记了 PHP 变量中的 $var name 应该是var $name

    <?php
      class Game {
        var $name;
        public function show_game() {
          echo $this->name; // Returns "testing game"
        }
      }
      $game = new Game;
      $game->name = "testing game";
      $game->show_game();
    ?>
    

    希望这会有所帮助! :)

    【讨论】:

      猜你喜欢
      • 2021-01-03
      • 1970-01-01
      • 2015-02-26
      • 2018-09-27
      • 2020-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-10
      相关资源
      最近更新 更多