Accesso ai metodi all'interno delle classi in OOP in PHP

È possibile chiamare alcuni metodi all'interno di altri tramite $this. Vediamo con un esempio. Supponiamo di avere una classe User con un metodo che restituisce una proprietà:

php<?php
  class User {
    public $name;
    
    public function show() {
      return $this->name;
    }
  }
?>

Supponiamo di avere anche un metodo cape, che converte la prima lettera di una stringa in maiuscolo:

php<?php
  class User {
    public $name;
    
    public function show() {
      return $this->name;
    }
    
    public function cape($str) {
      return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
    }
  }
?>

Utilizziamo il metodo cape all'interno del metodo show:

php<?php
  class User {
    public $name;
    
    public function show() {
      return $this->cape($this->name);
    }
    
    public function cape($str) {
      return mb_strtoupper(mb_substr($str, 0, 1)) . mb_substr($str, 1);
    }
  }
?>
Задание 1

Crea una classe Student con le proprietà name e surn.

Задание 2

Crea un metodo helper, che prenderà il primo carattere di una stringa e lo renderà maiuscolo.

Задание 3

Crea un metodo che restituirà le iniziali dello studente, cioè le prime lettere del suo nome e cognome.