Author: Gavriloaie Eugen-Andrei (shiretu@gmail.com)
Inheritance: extends CSerializableObject
Ejemplo n.º 1
0
        echo "Hello World!\n";
    }
}
class MyClass1
{
    use HelloWorld {
        sayHello as public;
    }
}
class MyClass2
{
    use HelloWorld {
        sayHello as final;
    }
}
class MyClass3
{
    use HelloWorld {
        sayHello as protected final;
    }
    public function sayHi()
    {
        return $this->sayHello();
    }
}
$a = new MyClass1();
$a->sayHello();
$a = new MyClass2();
$a->sayHello();
$a = new MyClass3();
$a->sayHi();
Ejemplo n.º 2
0
<?php

trait HelloWorld
{
    private function sayHello()
    {
        echo "Hello World 1!\n";
    }
}
trait HelloWorld2
{
    public function sayHello2()
    {
        echo "Hello World 2!\n";
    }
}
class MyClass1
{
    use HelloWorld2 {
        sayHello as public;
    }
    use HelloWorld;
}
$a = new MyClass1();
$a->sayHello();
$a->sayHello2();
Ejemplo n.º 3
0
    {
        echo 'Hello World!' . " {$callFrom} \n\n";
    }
}
// Change visibility of sayHello
class MyClass1
{
    use HelloWorld {
        sayHello as protected;
    }
    public function sayHelloMC1()
    {
        echo $this->sayHello('MyClass1');
    }
}
// Alias method with changed visibility
// sayHello visibility not changed
class MyClass2
{
    use HelloWorld {
        sayHello as private myPrivateHello;
    }
    public function sayHelloMC2()
    {
        echo $this->myPrivateHello('MyClass2');
    }
}
$oM1 = new MyClass1();
echo $oM1->sayHelloMC1();
$oM2 = new MyClass2();
echo $oM2->sayHelloMC2();
Ejemplo n.º 4
0
    public function sayHello()
    {
        echo 'Hello World!';
    }
}
// Change visibility of sayHello
class MyClass1
{
    use HelloWorld {
        sayHello as protected;
    }
    public function test()
    {
        $this->sayHello();
    }
}
// Alias method with changed visibility
// sayHello visibility not changed
class MyClass2
{
    use HelloWorld {
        sayHello as private myPrivateHello;
    }
}
$a = new MyClass1();
//$a->sayHello(); // protected, not gonna work
$a->test();
echo PHP_EOL;
?>