Пример: Строку разбить на слова с помощью функций регулярных выражений. Если вначале строки есть комбинация, то провести шифрование, дешифрование каждого слова отдельно и вывести на экран.
Текст программы:
<?php
function _XOR($s)
{
for($i=0; $i<strlen($s); $i++)
{
$s[$i] = $s[$i] ^ 'p';
}
return $s;
}
<p>Задание: строку разбить на слова с помощью функций регулярных выражений.
<br>Если вначале строки есть комбинация \p, то провести шифрование,
<br>дешифрование каждого слова отдельно и вывести на экран.<br><br>";
$fio = "\pДьяков Александр Владимирович";
$afio = split (" ", $fio); // функция разбивает строку на слова, используя разделитель - пробел
$str = $afio[0];
if($afio[0][0] == '\\' && $afio[0][1] == 'p')
{
echo "<i>Шифрование будет!</i><br>";
$astr = split ("\\p", $str);
$afio[0] = $astr[1];
$afio[0] = _XOR($afio[0]);
$afio[1] = _XOR($afio[1]);
$afio[2] = _XOR($afio[2]);
print "<p>Вывод зашифрованного ФИО:<br>";
print "$afio[0] <br>"; // Выводит зашифрованной Фамилии
print "$afio[1] <br>"; // Выводит зашифрованного Имени
print "$afio[2] <br>"; // Выводит зашифрованного Отчества
$afio[0] = _XOR($afio[0]);
$afio[1] = _XOR($afio[1]);
$afio[2] = _XOR($afio[2]);
print "<p>Вывод дешифрованного ФИО:<br>";
print "$afio[0] <br>"; // Выводит зашифрованной Фамилии
print "$afio[1] <br>"; // Выводит зашифрованного Имени
print "$afio[2] <br>"; // Выводит зашифрованного Отчества
}
else
{
echo "<i>Шифрование будет отсутствовать!</i><br>";
print "$afio[0] <br>"; // Выводит Фамилию
print "$afio[1] <br>"; // Выводит Имя
print "$afio[2] <br>"; // Выводит Отчество
}
?>
Результат работы: