Я пишу скрипт PHP, который обновляет файл .htpasswd (да, я знаю, что он не очень безопасен, но у меня есть несколько защит, чтобы люди не могли получить доступ к скрипту).Удаление неизвестной части строки PHP
Прямо сейчас, я просто добавление текущего файла, так:
$user = ''; // (Not an empty strings just removed the part that grabs this for security reasons)
$password = ''; // (Not an empty strings just removed the part that grabs this for security reasons)
$password = crypt($password, base64_encode($password));
$line = $user . ':' . $password;
$fh = fopen('path/to/password/file','a');
fwrite($fh,$line);
fclose($fh);
Однако, я хотел бы, чтобы удалить текущую запись на этом человеке. Если бы я знал, что их старый пароль был, например pass123
, я бы просто использовал str_replace($user . ':' . 'pass123','',$currentfiledata)
, но я этого не делаю, и у меня нет способа его сохранить.
Как бы я мог это сделать? Я предполагаю использовать preg_replace
или что-то подобное, но я не испытываю этого.
Sidenote: Не только это, но и многое другое работает с использованием текстового файла. Какую специальную причину вы не используете для этой базы данных? (намного более управляемый) * Просто любопытно *. –
@ Fred-ii- Я разрабатываю то, что будет регулярно передаваться из домена в другой, и я не могу использовать базу данных для этого. Я шифрую вещи в текстовые файлы с ключами, которые я меняю каждый день. Я знаю, что это не очень безопасно, но это лучшее, что я могу сделать. – RafDev
Рассматривали ли вы использование SQLite? – Mike