Stringable: Skillnad mellan sidversioner
Admin (diskussion | bidrag) (Skapade sidan med '= Sidslut = Orginalhemsidan på Engelska : https://www.php.net/manual/en/class.stringable.php <BR>PHP<BR>Språkreferens <BR>Fördefinierade Gränssnitt och Klasser<BR> Kategori:Php <hr> 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/ <BR><BR>Tack till [https://datorhjalp.se Datorhjälp] som har sponsrat Linux.se...') |
Admin (diskussion | bidrag) |
||
Rad 1: | Rad 1: | ||
=== Gränssnittet Stringable === | |||
(PHP 8) | |||
==== Introduktion ==== | |||
Gränssnittet Stringable anger att en klass har en __toString()-metod. Till skillnad från de flesta gränssnitt är Stringable implicit närvarande i alla klasser som har den magiska __toString()-metoden definierad, även om det kan och bör deklareras explicit. | |||
Dess huvudsakliga värde är att tillåta funktioner att typkontrollera mot unionstypen string|Stringable för att acceptera antingen en strängprimitiv eller ett objekt som kan omvandlas till en sträng. | |||
==== Gränssnittssammanfattning ==== | |||
<pre> | |||
interface Stringable { | |||
/* Metoder */ | |||
public __toString(): string | |||
} | |||
</pre> | |||
==== Exempel på Stringable ==== | |||
===== Exempel #1 Grundläggande användning av Stringable ===== | |||
<pre> | |||
<?php | |||
class IPv4Address implements Stringable { | |||
public function __construct( | |||
private string $oct1, | |||
private string $oct2, | |||
private string $oct3, | |||
private string $oct4, | |||
) {} | |||
public function __toString(): string { | |||
return "$this->oct1.$this->oct2.$this->oct3.$this->oct4"; | |||
} | |||
} | |||
function showStuff(string|Stringable $value) { | |||
// För ett Stringable-objekt kommer detta implicit att anropa __toString(). | |||
print $value; | |||
} | |||
$ip = new IPv4Address('123', '234', '42', '9'); | |||
showStuff($ip); | |||
?> | |||
</pre> | |||
Ovanstående exempel kommer att ge något liknande: | |||
<pre> | |||
123.234.42.9 | |||
</pre> | |||
==== Innehållsförteckning ==== | |||
* [[Stringable::__toString]] — Hämtar en strängrepresentation av objektet | |||
= Sidslut = | = Sidslut = | ||
Orginalhemsidan på Engelska : https://www.php.net/manual/en/class.stringable.php | Orginalhemsidan på Engelska : https://www.php.net/manual/en/class.stringable.php |
Nuvarande version från 29 augusti 2024 kl. 17.32
Gränssnittet Stringable
(PHP 8)
Introduktion
Gränssnittet Stringable anger att en klass har en __toString()-metod. Till skillnad från de flesta gränssnitt är Stringable implicit närvarande i alla klasser som har den magiska __toString()-metoden definierad, även om det kan och bör deklareras explicit.
Dess huvudsakliga värde är att tillåta funktioner att typkontrollera mot unionstypen string|Stringable för att acceptera antingen en strängprimitiv eller ett objekt som kan omvandlas till en sträng.
Gränssnittssammanfattning
interface Stringable { /* Metoder */ public __toString(): string }
Exempel på Stringable
Exempel #1 Grundläggande användning av Stringable
<?php class IPv4Address implements Stringable { public function __construct( private string $oct1, private string $oct2, private string $oct3, private string $oct4, ) {} public function __toString(): string { return "$this->oct1.$this->oct2.$this->oct3.$this->oct4"; } } function showStuff(string|Stringable $value) { // För ett Stringable-objekt kommer detta implicit att anropa __toString(). print $value; } $ip = new IPv4Address('123', '234', '42', '9'); showStuff($ip); ?>
Ovanstående exempel kommer att ge något liknande:
123.234.42.9
Innehållsförteckning
- Stringable::__toString — Hämtar en strängrepresentation av objektet
Sidslut
Orginalhemsidan på Engelska : https://www.php.net/manual/en/class.stringable.php
PHP
Språkreferens
Fördefinierade Gränssnitt och Klasser
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.