در قطعه کد زیر، از ویژگی Late Static Binding و تفاوت self و static استفاده شده است.
خروجی اجرای این اسکریپت PHP در خروجی استاندارد دقیقا چه خواهد بود؟ (با در نظر گرفتن حروف کوچک/بزرگ و فاصلهها)
<?php
class Base
{
protected static string $name = 'Base';
public static function who(): string
{
return static::$name;
}
public static function test(): void
{
echo self::who() . PHP_EOL;
echo static::who() . PHP_EOL;
}
}
class Child extends Base
{
protected static string $name = 'Child';
public static function who(): string
{
return parent::who() . ' > ' . static::$name;
}
}
Child::test();
🔖 #PHP #پی_اچ_پی
👤 Developix
💎 Channel: @DevelopixPHP
