Attributsyntax
Attributsyntax
Det finns flera delar till attributsyntaxen. Först och främst är en attributdeklaration alltid innesluten med en start `#[` och ett motsvarande slut `]`. Inuti dessa kan ett eller flera attribut listas, separerade med kommatecken. Attributnamnet kan vara ett oklassificerat, kvalificerat eller fullt kvalificerat namn enligt beskrivningen i "Grunderna för att använda namespaces". Argument till attribut är valfria, men är inneslutna i de vanliga parenteserna `()`. Argument till attribut kan endast vara bokstavliga värden eller konstanta uttryck. Både positionell och namngiven argumentsyntax kan användas.
Attributnamn och deras argument kopplas till en klass, och argumenten skickas till dess konstruktör när en instans av attributet begärs genom Reflection API. Därför bör en klass introduceras för varje attribut.
Exempel #1 Attributsyntax
<?php // a.php namespace MyExample; use Attribute; #[Attribute] class MyAttribute { const VALUE = 'value'; private $value; public function __construct($value = null) { $this->value = $value; } } // b.php namespace Another; use MyExample\MyAttribute; #[MyAttribute] #[\MyExample\MyAttribute] #[MyAttribute(1234)] #[MyAttribute(value: 1234)] #[MyAttribute(MyAttribute::VALUE)] #[MyAttribute(array("key" => "value"))] #[MyAttribute(100 + 200)] class Thing { } #[MyAttribute(1234), MyAttribute(5678)] class AnotherThing { } ?>
Sidslut
Orginalhemsidan på Engelska : https://www.php.net/manual/en/language.attributes.syntax.php
PHP
Språkreferens
Språkreferens#Attribut
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp som har sponsrat Linux.se med webserver.