PHP 两个同名函数

标签 php

如何在一个 php 文件中包含两个同名的函数?

我有两个文件:

file1.php 其中包括

function getResidentCount() {}

function getResidentData() {}

file2.php 还包括

function getResidentCount() {}

function getResidentData() {}

我需要 file3.php 来包含所有这些函数,因为每个函数都用于计算不同的居民计数和数据。

知道如何将这两个文件包含在一个文件中。我无法更改原始文件(它们正在为实时应用程序制作)。

谢谢, 克劳迪娅

最佳答案

这是邪恶的。我只提供它作为练习。

include('file1.php');
//include('file2.php'); 
$php=file_get_contents("file2.php");
$php=str_replace('getResidentCount', 'file2GetResidentCount', $php);
$php=str_replace('getResidentData', 'file2GetResidentData', $php);
eval($php);

现在您可以使用不同的名称调用重复的函数!

不要这样做。这只是一个想法:)

另一种方法是使用 APD extension ,它允许您重命名函数。包含第一个文件,将其函数重命名为 rename_function , 然后包含第二个文件。

真的,您可能应该深吸一口气,推迟您正在做的事情,并重构您拥有的东西。从中吸取教训并改变你的做法,这样它就不会再发生了。 Namespaces可能对您有所帮助,更面向对象的方法也可能。

关于PHP 两个同名函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7758926/

相关文章:

php - 是否有静态调用对象方法的设计模式

php - 选择连接重复

php - 安全地使用二维码

php - 包括不工作(菜鸟)

javascript - 我想将 ajax 响应数据加载到下拉列表中

使用 UNION 的 PHP MySQL 查询并定位数据来自哪个表

php - 使用 alter table 更改日期格式

php - 显示真实内容,而不是 HTML 标签和内联 CSS 包裹的内容

javascript - JQuery AJAX Post 不将数据发布到 PHP

PHP 从图像扩展中删除参数