问题标签 [magic-constants]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
265 浏览

php - 在 PHP 类中定义 __DIR__

这是否会导致 500 错误?与执行时间和可用内容有关,还是我使用__DIR__不正确?

0 投票
2 回答
105 浏览

php - 通过魔术常量/关键字或类似结构引用 PHP 超类名称(避免在派生类中命名超类)

以下代码中的注释显示了我要完成的工作,这非常简单:我希望能够使用 PHP 内置常量(或其他构造)来引用父类的名称,例如__CLASS__, 但是它指的是父类而不是当前类(例如parent::__CLASS__)(另外,虽然代码没有显示它,但如果我有一个子类,那么在这样的类中,我希望能够通过类似parent::parent::__CLASS__if的方式引用父类尽可能)。

输出:

0 投票
1 回答
1879 浏览

php - Can I change current directory to parent directory using PHP __DIR__ constant?

I am using PHP magic constant to move uploaded file to a new location, and the upload handler file location is inside "_inc" file inside the main application folder like this:

"path/tasksapp/_inc/upload_handelr.php"

So; when I use __DIR__ I get the path where the upload hander is exist:

"path/tasksapp/_inc/"

While the new location for uploaded file should be:

"path/tasksapp/uploads"

Is there's any option or attribute I can use with __DIR__ constant so I can change current directory to parent directory:

change:

"path/tasksapp/_inc/"

to be:

"path/tasksapp/"

0 投票
2 回答
55 浏览

php - 无法比较魔术常数 __METHOD__

好吧,我想我在这里有一些东西......

在一个类中,我试图根据使用的方法的名称来调节私有函数。

所以代码看起来像:

__METHOD__如果我在尝试使用它的同一级别上执行 var_dump(),我会得到一个不错的string(19)"my_class::my_method". 所以我将一个字符串与另一个字符串进行比较。

以下也将失败:

  • 将两个变量都转换为字符串并进行比较。
  • 复制__METHOD__到 a(string) $var并比较它们。
  • 将两个字符串都放在上面并比较它们。
  • 对文本使用单引号。

我可能是错的,但我想我在这里遇到了一个错误:(

PHP 版本 5.6.1 - 赢

0 投票
3 回答
5445 浏览

php - 为什么绝对路径常量 __DIR__ 和 __FILE__ 不应该在 Symfony 中使用

我使用SensioLabs Insight来控制我的代码质量。

对于简单的文件上传,我必须获取上传目录的绝对路径:

直接来自官方文档的代码(如何使用 Doctrine 处理文件上传

__DIR__但如果分析的代码包含或__FILE__PHP 魔术常量,SLInsight 会发出警告:

__DIR____FILE__常量可能与 Symfony 资源覆盖系统冲突。

这个常量的使用如何导致与 Symfony 的冲突?

我怎样才能在我的代码中避免它们?

0 投票
2 回答
89 浏览

php - PHP获取祖父目录路径

我知道 PHP > 5.3 添加了魔术常量:__DIR__获取父目录路径,

但是我怎样才能以更聪明的方式获得祖父目录路径?

1.__DIR__.'/../'

2.dirname(__DIR__)

0 投票
1 回答
116 浏览

php - 有没有办法将 PHP 魔术常量作为函数默认值执行?

这里的想法是创建一个用于记录和调试目的的方法,它不需要向所述方法传递相关的“魔术常量”。

实际上,我正在尝试使用如下方法定义来实现这一点:

我遇到的问题是,如果我在我正在“调试”的文件之外的文件中定义上述方法,我最终会得到文件中的文件和定义方法的文件中的行,而不是我我正在“调试”。

考虑以下文件集:

调试.php

测试.php

输出:

当消息的调用发生在第二个文件中时——正如此时应该清楚的那样,这不是预期的实现。我当然可以在调用时将那些魔术常量传递给“调试”方法,但如果可能的话,我希望消除不必要的代码。

0 投票
1 回答
40 浏览

php - 谁能告诉php中include和require与魔术常量的关系是什么?

我正在学习在php.net上包含和要求构造,并发现这条规则的例外是魔术常量,在包含发生之前由解析器评估。在该页面的第7 段,但不明白魔术常量与 php 中的 include 和 require 的关系是什么。

谁能用简单易懂的语言说出来?

对我的问题进行否定标记很好,但请务必回答,我想知道和学习,否定标记无关紧要。

0 投票
1 回答
286 浏览

php - 魔术常量__FILE__的描述中的“符号链接已解析”是什么意思?

我正在使用PHP 7.2.0

下面是魔术常数的描述__FILE__

已解析符号链接的文件的完整路径和文件名。如果在包含中使用,则返回包含文件的名称。

我不明白“已解析符号链接的文件的文件名”子句的含义

有人请通过适当的魔术常数用法示例以及__FILE__适当的解释使我理解该子句的含义。

0 投票
1 回答
56 浏览

php - 使用 __DIR__ 的缺点

__DIR__我最近在解决有关在包含脚本包含脚本的问题时遇到了魔法常数。

在做了一些阅读之后,我找不到任何理由不使用__DIR__requireorinclude语句中的每条路径添加前缀。

__DIR__ . '/path/to/script.php'所以我的问题是 -与使用相对路径相比,使用时是否有任何已知的缺点/潜在的副作用需要注意?

谢谢。