<?php
error_reporting(-1);
mb_internal_encoding('utf-8');

$phrase =  mb_strtoupper("абвгдеёжзийклмнопрстуфхцчшщъыьэюя");
$fromAngel = -80;
$toAngel = 260;
$radius = 12.5;
$phraseLen = mb_strlen($phrase);
$split = preg_split('//u', $phrase, 0, PREG_SPLIT_NO_EMPTY);

$height = 30;
$centerX = 40;
$centerY = 15;
$screen = array();
for ($q = 0; $q < $height; $q++){
	$screen[$q] = array_fill(0, 80, ' ');
}

$rad = 360/$phraseLen*M_PI/180;
$a = $fromAngel*M_PI/180;
for ($q = 0; $q < $phraseLen; $q++){
	$a = $a + $rad;
	$x = $centerX + round($radius * sin($a));
    $y = $centerY + round($radius * cos($a));
    $screen[$y][$x] = $split[$q];
    
}
foreach ($screen as $screen){
	echo implode(' ', $screen);
}