php - 复制功能

标签 php function

首先,我对此进行了研究。但我找不到任何解决方案。 这是我想做的。 我有多个具有相同函数名称的文件,在测试过程中我没有指定该函数并保持简单。

将包含多个文件,但由于该函数已被声明,我收到 fatal error 无法重新声明函数...,先前在...中声明

我知道如何避免该 fatal error ,但由于我包含具有相同功能的多个文件,因此无法修复它。

我的问题是,这符合逻辑吗?还是我应该重新思考并做一些不同的事情。

我的 friend 告诉我这可以用对象等来处理。

感谢您的任何建议。

最佳答案

功能相同吗?在这种情况下,您可以通过用 function_exists() 包装函数声明来“破解”问题。条款,请参阅How to avoid fatal error Cannot redeclare function in PHP :

<?php
if (!function_exists('utility')) {
  function utility() {
    // ...
  }
}
?>

或者,也许值得您花时间阅读 namespaces :

In the PHP world, namespaces are designed to solve two problems that authors of libraries and applications encounter when creating re-usable code elements such as classes or functions:

  1. Name collisions between code you create, and internal PHP classes/functions/constants or third-party classes/functions/constants.
  2. Ability to alias (or shorten) Extra_Long_Names designed to alleviate the first problem, improving readability of source code. (source)

关于php - 复制功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6789320/

相关文章:

postgresql - 在函数空白结果中选择语句

arrays - 如何将图像从另一个类传输到 UIImage 数组?

javascript - 如何将变量传递到 Magento 中的 Data.php 中?

php - 每个订单项的 WooCommerce 优惠券代码

python - python 获取函数的返回值并将其更改为 int

javascript - 在 Javascript 中使用图片链接

javascript - 如何通过在javascript中调用函数来重复一个过程

php - 在 joomla ADMIN 登录表单中记住我复选框。如何?

php - Doctrine DBAL 对存储过程的支持

PHP fatal error : Class 'Microsoft\BingAds\Auth\OAuthWebAuthCodeGrant' not found