如何在PHP中声明函数?

时间:2013-04-18 12:23:31

标签: php function

我只想declare函数没有实现。实现必须在另一个文件中。

这是可能的吗?如果可以的话,那有什么棘手的吗? 通常的做法是这样做吗?我很好奇,因为我来自C ++。

示例:

----------------- declarations.php -----------

<?php
 function first($name, $age);
 function second($country);
?>

----------------- implementss.php -----------

<?php 
include (declarations.php);

function first($name, $age)
{
 // here is the implementation
}

function second($country)
{
 // here is the other implementation
}
?>

4 个答案:

答案 0 :(得分:5)

我认为你想要的是一个界面,虽然它必须在一个类中实现。

http://php.net/manual/en/language.oop5.interfaces.php

由于PHP是一种脚本语言,您仍然必须使用include直接引用该实现。没有像C ++这样的链接阶段。

答案 1 :(得分:1)

不,PHP没有相应的头文件,您可以在其中声明一个全局函数并在某处实现它。

正如丹尼尔所写,有类似的东西,即接口,但它们的目的是描述一个所有实现类必须遵守的接口,而不是指示“函数占位符”。

此外,PHP版本5.4不支持函数或方法重载,因此即使使用不同的参数,也不能多次声明相同的函数或方法。

答案 2 :(得分:1)

您可以使用面向对象的编程来解决这个问题吗?使用几种抽象方法的抽象类可以做得很好。

// File: MyClass.php
abstract class AbstractClass {

    abstract public function first($arg);
    abstract public function second($arg, $arg2);

}

// File: core.php
require_once('MyClass.php');

class MyClass extends AbstractClass {

    public function first($arg) {
        // implementation goes here
    }

    public function second($arg, $arg2) {
        // implementation goes here
    }
}

答案 3 :(得分:1)

PHP和C ++与此不同。 无需对您的函数进行声明和单独实现。 您必须同时执行此操作(在同一文件中声明和实现),然后在脚本中包含(include()或require_once())函数。