
<?php

mb_internal_encoding("UTF-8");

class Employee
{
    public $name;
    public $rate;
    public $hours = array();
    
    public function getTotalHoursWorked()
    {
        return array_sum($this->hours);
    }
    public function getSalary()
    {
        $hours  = $this->getTotalHoursWorked();
        $salary = $hours * $this->rate;
        return $salary;
    }
    public function getShortName()
    {
        
        $pattern = "/[а-яё]+$/u";
        $replace = '.';
        $z       = preg_replace($pattern, $replace, $this->name);
        return $z;
        
    }
    
    
    
    
}
$ivan        = new Employee;
$ivan->name  = "Иванов Иван";
$ivan->rate  = 10;
$ivan->hours = array(
    40,
    40,
    40,
    40
);

$peter        = new Employee;
$peter->name  = "Петров Петр";
$peter->rate  = 8;
$peter->hours = array(
    40,
    10,
    40,
    50
);

$employees = array(
    $ivan,
    $peter
);
$col1 = 30;
$col2 = 16;
$col3 = 16;
$col4 = 16;
function padRight($string, $arg)
{
	$count = $arg - mb_strlen($string);
	$space = str_repeat(' ', $count);
    echo $string . $space;
}
function padLeft($string, $arg)
{
    $count = $arg - mb_strlen($string);
	$space = str_repeat(' ', $count);
	echo $space . $string;
}




echo padRight("Сотрудник", $col1) . padLeft("Часы", $col2) . padLeft("Ставка", $col3) . padLeft("З/п", $col4) . "\n\n";
$totalHrs = 0;
$totalRate = 0;
$totalSlr = 0;
foreach ($employees as $employee) {
    $totalHrs += $employee->getTotalHoursWorked();
    $totalRate += $employee->rate;
    $totalSlr += $employee->getSalary();
}





foreach ($employees as $employee) {
    
    echo padRight($employee->getShortName(), $col1) . padLeft($employee->getTotalHoursWorked(), $col2) . padLeft($employee->rate, $col3) . padLeft($employee->getSalary(), $col4) . "\n";
    
}
echo padRight('Всего : ', $col1) . padLeft($totalHrs, $col2) . padLeft($totalRate, $col3) . padLeft($totalSlr, $col4) . "\n";