Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung von Beispielen für die Verwendung von Schließungen und Beispielen für Ausführungseffizienztests in PHP

Ausführliche Erläuterung von Beispielen für die Verwendung von Schließungen und Beispielen für Ausführungseffizienztests in PHP

伊谢尔伦
伊谢尔伦Original
2017-07-01 13:06:461333Durchsuche

Dieser Artikel stellt hauptsächlich eine kurze Analyse von Abschlüssen (anonyme Funktionen) in PHP vor. Dieser Artikel enthält ein Anwendungsbeispiel und einen Ausführungseffizienztest.

Abschlüsse werden auch anonyme Funktionen genannt, die in PHP5.3 eingeführt wurden.

Verwendungsmethode

Sie müssen den Wert im Gruppenelement integer anpassen

Der Code lautet wie folgt folgt:

$data = range(0, 100);//想要每个元素的值都加上.html的后缀
$suffix = '.html';
function makeSuffix($str, $suffix)
{
    return $str . $suffix;
}
$new_data = array_map(function($item) use ($suffix) {
    return makeSuffix($item, $suffix);
}, $data);

Die Struktur des Elements muss geändert werden

Der Code lautet wie folgt:

$arr = [
    [
        'id'=>'',
        'name'=>'',
        'create_time'=>'',
    ],
];
$new_data = array_map(function($item) {
    return ['id'=>$item['id'],'name'=>$item['name']];
}, $arr);
//如果是用foreach还需要在循环里面建立零时变量,把需要的值赋给这个变量

Ausführungseffizienz

Der Code lautet wie folgt:

$data = range(0, 50000)
//1
foreach ($data as &$value) {
    $value = makeSuffix($value, $suffix);
}
//2
foreach ($data as $value) {
    $new[] = makeSuffix($value, $suffix);
}
//3
array_map(function($item) use ($suffix) {
    return makeSuffix($item, $suffix);
}, $data);

Nach 5W-Ausführungen erhöht sich ab den Ergebnissen 1-3 in den meisten Fällen die Ausführungszeit. und die Ausführungsergebniszeit eines von ihnen ist wie folgt

Der Code lautet wie folgt:

1:0.0260009765625
2:0.038002014160156
3:0.047003030776978

Schlussfolgerung

Die Der Abschlusscode ist relativ elegant, aber die Logik ist leicht zu verwechseln und die Ausführungseffizienz ist im Vergleich zu anderen Methoden relativ gering. Er sollte mit Vorsicht verwendet werden. Es wird empfohlen, es zu verwenden, wenn die Codestruktur chaotisch ist und gekapselt werden muss.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung von Beispielen für die Verwendung von Schließungen und Beispielen für Ausführungseffizienztests in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn