不能在静态函数中使用 preg_replace,为什么?

发布于 2024-10-08 16:55:47 字数 66 浏览 4 评论 0原文

有什么原因导致我不能在静态函数中使用 preg_replace 吗?当我将代码移出其中时,它运行得很好。有什么想法吗?

Is there any reason why I can't use preg_replace inside a static function? when I move the code out of it, it works perfectly. Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

疑心病 2024-10-15 16:55:47

有趣的是,因为这工作正常:

class obnoxiousWeasel {

  public static function callMeDoItIDareYa($omgudid)
  {
    return preg_replace("/(, you don\'t listen)/", '...',  $omgudid);
  }

}

$pieceofmymind = "ok, but what's the point, you don't listen";

$reply = obnoxiousWeasel::callMeDoItIDareYa($pieceofmymind);

echo $reply;

返回:“好吧,但是有什么意义......”

我们需要查看您的代码,然后才能告诉您出了什么问题。在静态函数中使用 preg_replace 绝对不是问题。

编辑:我实际上编辑了上面无用的功能来改进它。不妨面对现实吧,我沉迷于重构。

Funny, because this works fine:

class obnoxiousWeasel {

  public static function callMeDoItIDareYa($omgudid)
  {
    return preg_replace("/(, you don\'t listen)/", '...',  $omgudid);
  }

}

$pieceofmymind = "ok, but what's the point, you don't listen";

$reply = obnoxiousWeasel::callMeDoItIDareYa($pieceofmymind);

echo $reply;

returns: "ok, but what's the point..."

We will need to see your code before we can tell you what is wrong. Using preg_replace inside a static function is definitely not the problem.

Edit: I actually edited the above useless function to improve it. Might as well face it, I'm addicted to refactoring.

吝吻 2024-10-15 16:55:47

preg_replace 是一个核心 PHP 函数,可以在任何范围内使用。

也许您正在使用它来评估静态方法中的类成员?那是行不通的。但如果没有看到相关的代码块,我就无法确定。

preg_replace is a core php function and can be used at any scope.

perhaps you are using it to evaluate a class member in the static method? that would not work. but I couldn't say for sure without seeing a relevant chunk of code.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文