<?php
$text    = '8-911-400-12-34';
$regexp = '/^   ( (8[0-9]{10}) | (8[(]([0-9]{3})[)][-]([0-9]{3})[ ]([0-9]{2})[ ]([0-9]{2}))     |    (8[-]([0-9]{3})[-]([0-9]{3})[-]([0-9]{2})[-]([0-9]{2}))     )       $/';
 
if (preg_match($regexp, $text)){
    echo "Все верно.\n";
} else {
    echo "Укажите номер в  формате «8(ххх)-ххх хх хх», «8-ххх-ххх-хх-хх» или «8хххххххххх»!\n";
}