PHP在类中定义函数

时间:2011-01-27 19:50:19

标签: oop php

这里非常简单的问题。用PHP完成我的第一个OO编程,更习惯于Java& C#。

使用此类定义:

class RouteParser {
    var $DEBUG = 1;

    function parse($from, $to, $route){
        debug("test");
        debug("test again");
    }

    function debug($arg) {
        if($DEBUG) {
            echo "<pre>DEBUG: " . print_r($arg) . "</pre>";
        }
    }
}

这个执行代码:

include("RouteParser.php");
$rp = new RouteParser();
$return = $rp->parse("from","to","test");

我收到了错误:

  

致命错误:调用未定义   函数debug()in   C:\ Xampplite文件\ htdocs中\ routeparse \ RouteParser.php   第7行

据我所知,PHP不支持函数原型,所以我很难理解如何告诉一个类函数另一个类函数存在...根据我在PHP文档中找到的,这只是如果函数在条件内(这是有道理的)......

1 个答案:

答案 0 :(得分:11)

请改用$this->debug()$this使PHP在类本身中查找函数,而只有debug()使PHP在全局范围内查找名为debug的函数。