PHP 8 中的可字符串接口是什么?

在 PHP 8 中,添加了一个新的可字符串接口(__toSting)。此方法以双下划线 (__) 开头。该__toString方法允许获得表示为一个字符串的对象。当一个类使用__toString定义一个方法时,它会在需要将其视为字符串时调用一个对象。

示例:使用 __toString 的可字符串接口

<?php

   class Employee{

      public function __toString(): string

      {

         return 'Employee Name';

      }

   }

   $employee = new Employee();

   print_r((string)$employee);

?>

输出结果
Employee Name

在 PHP 8 中,Stringable 接口使得传递字符串变得容易。一旦一个类实现了__toString方法,一个Stringable 接口就会自动添加。它不需要显式实现接口。每当强加严格类型(string_types=1)时,Stringable 接口都有助于类型提示。

示例:在 PHP 8 中使用可字符串接口

<?php

   declare(strict_types=1);

   class Employee {

      public function __toString() {

         return 'Employee Details';

      }

   }

   $emp = new Employee;

   var_dump($emp instanceof Stringable);

?>

输出结果
bool(true)

以上是 PHP 8 中的可字符串接口是什么? 的全部内容, 来源链接: utcz.com/z/347579.html

回到顶部