Как сохранить utf-8(с) в file_put_contents?
Этот код работает. Сохраняет фотографию с помощью webcam.js. проблема в том, что я сохраняю файл с именем файла Peña, он не работает. Я получил результат имени файла Peña.jpg или Pe? A.jpg. но в базе данных я правильно понял (peña).
Проблема в файле file_put_contents и функции переименования.
$photoname = $_POST['photoname'];
$date1 = date('Ymd');
$photo_file = 'photos/'.$date.'/'.$date."".$photoname.".jpg";
$encoded_data = $_POST['mydata'];
$binary_data = base64_decode( $encoded_data );
if (!is_dir('photos/' . $month)) {
// dir doesn't exist, make it
mkdir('photos/' . $month);
}
/*get the image */
$result = file_put_contents($photo_file, $binary_data);
функция переименования (также работает без специальных символов).
$fname = utf8_decode($_POST['fname']);
$mname = utf8_decode($_POST['mname']);
$lname = utf8_decode($_POST['lname']);
$photo_old = $_POST['photopath'];
$photoname = utf8_decode(strtolower($fname. ''. $mname.''.$lname));
$date1 = date('Ymd');
$month = date('Ymd');
$photo_final = 'photos/'.$month.'/'.$date1."".$photoname.".jpg";
rename($photo_old, $photo_final);
результат:
Warning: rename(photos/20150929/20150929Peña.jpg,photos/20150930/20150930Pe?a.jpg)