There is no problem not worth solving, and no technology not worth learning!

Error in PHP 7.4: Cannot RedeClare getFirstSkuIndex(), set as a static anonymous function, and assign a value to the variable

在 PHP 7.4 中报错:Cannot redeclare getFirstSkuIndex()。表示函数 getFirstSkuIndex() 已被定义。PHP不支持重定义已声明的函数。

1. Report an error in PHP 7.4: Cannot RedeClare GetFirstSkuIndex(). Indicates that the function getFirstSkuIndex() has been defined. PHP does not support redefining declared functions. as shown in Figure 1

在 PHP 7.4 中报错:Cannot redeclare getFirstSkuIndex()。表示函数 getFirstSkuIndex() 已被定义。PHP不支持重定义已声明的函数。
Figure 1

[2023-01-09 10:28:00] local.ERROR: Cannot redeclare getFirstSkuIndex() (previously declared in E:\wwwroot\object\storage\framework\views\f7c14c1d27c4ea3f4d0e1c60a5009bfe9a47c438.php:7) {
    "exception": "[object] (Symfony\\Component\\Debug\\Exception\\FatalErrorException(code: 64): Cannot redeclare getFirstSkuIndex() (previously declared in E:\\wwwroot\\object\\storage\\framework\\views\\f7c14c1d27c4ea3f4d0e1c60a5009bfe9a47c438.php:7) at E:\\wwwroot\\object\\storage\\framework\\views\\f7c14c1d27c4ea3f4d0e1c60a5009bfe9a47c438.php:7)
[stacktrace]
#0 {main}
"
} 


2. Reference:https://www.shuijingwanwq.com/2022/11/14/7149/, now because the same file is repeatedly introduced (re-introduced on business). This leads to the same function being duplicated.

3. View the code implementation of the imported file



function getFirstSkuIndex ($product) {
  // ...
}

return getFirstSkuIndex($product);


4. Declare the function as a closure function, and then assign a value to a variable, PHP will automatically convert this expression into a built-in class closure object instance. and set it to a static anonymous function. The coded implementation of the edited file, when re-executing the imported duplicate file, the function $GetFirstSkuIndex simply overrides the previous statement. No more errors.



$getFirstSkuIndex = static function ($product) {
  // ...
};

return $getFirstSkuIndex($product);


Need long-term technical maintenance or remote troubleshooting?

I am a PHP / Go backend engineer with 15+ years of experience, focused on existing system maintenance, bug fixing, performance optimization, server troubleshooting, WordPress maintenance, and small feature iterations.

If your project is facing any of the following issues, we can start with a small troubleshooting task first:

  • ✅ PHP / Laravel / Yii2 legacy systems without active maintenance
  • ✅ Go / Gin backend APIs that need troubleshooting or optimization
  • ✅ Slow, broken, or unstable WordPress websites
  • ✅ Nginx / MySQL / Redis / Linux server issues
  • ✅ CDN / Cloudflare / DNS / HTTPS configuration problems
  • ✅ Long-term remote technical support or part-time maintenance

More details: About Me & Collaboration

WeChat: 13980074657
Email: shuijingwanwq@gmail.com
Telegram: @shuijingwan
GitHub: https://github.com/shuijingwan

评论

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.