Was ist eine schnellere und effizientere Möglichkeit, zu überprüfen, ob ein Schlüssel in einem PHP-Array vorhanden ist?
P粉512363233
P粉512363233 2023-10-16 08:55:37
0
2
541

Betrachten Sie diese beiden Beispiele...

$key = 'jim';

// example 1
if (isset($array[$key])) {
    // ...
}

// example 2    
if (array_key_exists($key, $array)) {
    // ...
}

Mich würde interessieren, ob diese beiden besser sind. Ich habe das erste Beispiel verwendet, aber ich habe viele Leute auf dieser Website gesehen, die das zweite Beispiel verwendet haben.

Also, welches ist besser? Beeil dich? Klarere Absicht?

P粉512363233
P粉512363233

Antworte allen(2)
P粉969666670

如果您对我最近完成的一些测试感兴趣:

https://stackoverflow.com/a/21759158/520857

摘要:

| Method Name                              | Run time             | Difference
=========================================================================================
| NonExistant::noCheckingTest()            | 0.86004090309143     | +18491.315775911%
| NonExistant::emptyTest()                 | 0.0046701431274414   | +0.95346080503016%
| NonExistant::isnullTest()                | 0.88424181938171     | +19014.461681183%
| NonExistant::issetTest()                 | 0.0046260356903076   | Fastest
| NonExistant::arrayKeyExistsTest()        | 1.9001779556274      | +209.73055713%
P粉713866425

isset() 速度更快,但与 array_key_exists() 不同。

array_key_exists() 纯粹检查键是否存在,即使值为 NULL

鉴于 如果键存在且值为 NULLisset() 将返回 false

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage