suchen
  • Anmelden
  • Melden Sie sich an
Passwort-Reset erfolgreich

Verfolgen Sie die Projekte, die Sie interessieren, und erfahren Sie die neuesten Nachrichten über sie

其他语言层面的修改

Sammlung 105
Lesen 69547
Updatezeit 2016-09-11

一、在非兼容$this语境中以静态方式调用非静态方法将不再支持。

在非兼容$this语境中以静态方式调用非静态方法将不再支持。在这种场景下面,$this不会被定义,但调用还可以调用,但会有一个警告提示:

class A {
  public function test() { var_dump($this); }
}

// Note: Does NOT extend A
class B {
  public function callNonStaticMethodOfA() { A::test(); }
}

(new B)->callNonStaticMethodOfA();

// Deprecated: Non-static method A::test() should not be called statically
// Notice: Undefined variable $this
NULL

注意这种情况适用于在非兼容语境中调用。上面代码的例子中class B和class A没有关系,所以调用的时候$this是没有定义的。

但如果class B是从class A继承的话,该调用是合法的。

二、下面的这些保留字不能用作类名、接口名和trait名。

bool
int
float
string
null
false
true
下面这些关键字已经被留作将来使用,目前可以使用,不会报错,但不建议。
resourceobject
mixed
numeric

三、yield语法调整

在表达式里面使用yield语法结构的时候,不再需要括号了。它现在是一个右关联的操作符,优先级介于"print"和"=>"操作符。在某些场景下面行为和之前会不一致。

echo yield -1;
echo (yield) - 1;  // 之前的语法解释行为
echo yield (-1);   // 现在的语法解释行为

yield $foo or die;
yield ($foo or die);  // 之前的语法解释行为
(yield $foo) or die;  // 现在的语法解释行为

可以通过括号来避免歧义。

备注:关于yield,大家可以参考鸟哥的这篇文章:http://www.laruence.com/2012/08/30/2738.html

四、其他的一些调整. 

移除了ASP格式的支持和脚本语法的支持:<% 和 <script language=php>

不再支持对 new 的结果进行引用赋值。(感谢Gazhikaba分享翻译)

移除了在非兼容$this语境中对非静态方法的作用域调用。参考资料:https://wiki.php.net/rfc/incompat_ctx. http://www.laruence.com/2012/06/14/2628.html

ini文件里面不再支持#开头的注释,使用;。

$HTTP_RAW_POST_DATA 变量被移除,使用php://input来代替。https://wiki.php.net/rfc/remove_alternative_php_tags
Heiße KI -Werkzeuge
Undress AI Tool
Undress AI Tool

Ausziehbilder kostenlos

AI Clothes Remover
AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undresser.AI Undress
Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

Stock Market GPT
Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Beliebtes Werkzeug
Notepad++7.3.1
Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version
SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)