将文本从PHP音译为JavaScript 介绍

将文本从PHP音译为JavaScript 介绍,javascript,php,Javascript,Php,我正在进行个人项目,并使用Symfony3。 为了上传文件,我使用OneUploaderBundle。 我不接受由带重音的字符、西里尔字母等组成的文件名。 为此,我正在使用code部分中的函数 目标 我想在JavaScript的code部分使用PHP函数 代码 例子 输入:“12345 Rū311;īšiПāāÿāāāāāāāă.txt” 输出:“12345_rukisi_proverka_aouss_aaaeceeeiioeuuuuuuy.txt” 问题: 我在网上没有找到很多关于这个问题的信

我正在进行个人项目,并使用Symfony3。 为了上传文件,我使用OneUploaderBundle。 我不接受由带重音的字符、西里尔字母等组成的文件名。 为此,我正在使用
code
部分中的函数

目标 我想在JavaScript的
code
部分使用PHP函数

代码 例子 输入:“12345 Rū311;īšiПāāÿāāāāāāāă.txt”

输出:“12345_rukisi_proverka_aouss_aaaeceeeiioeuuuuuuy.txt”

问题: 我在网上没有找到很多关于这个问题的信息。 也许在这个任务中使用JavaScript不是一个好主意

或者我应该在Symfony3中创建服务,该服务可以通过AJAX访问并返回音译文本

结论 请告知

感谢您的时间和知识

更新
我希望在JavaScript中使用此函数,以便向用户显示在服务器上时文件名的外观。(无论如何,文件名都将在服务器上进行音译)。目前,我正在发送(在UploadListener中)每个文件的以下信息
[{'error':'none'}{'orig':'my file name.txt'}{'t13n':'my_file_name.txt'}]
。我想从服务器向浏览器发送尽可能少的信息。因此,如果有
代码的“翻译”
我只需要为每个文件发送
错误

我只需要对PHP进行AJAX调用,让它将文本返回到JS。Javascript是为了方便,服务器端代码是为了保护。如果您实现了此版本的javascript,则不应假设您获得的数据总是您想要的方式。我的文件上传方法有些不同,如果你想的话,你可以考虑。当我接受文件时,我计算它的sha256散列并将文件重命名为它的散列,同时在数据库中存储散列到文件名的转换。这样,无论文件名是什么,您都可以在数据库中存储各种内容。如果您允许用户上传图像,这也会节省大量空间。@Dimi谢谢,您的建议是个好主意。虽然我会在sha256散列中添加一些随机字符串,以防两个用户同时上载同一文件。@Rikijs如果两个用户上载同一文件,请仅存储一次文件以节省空间。当用户删除文件时,请将其从数据库中删除一次,检查是否有其他用户也在引用该文件,如果没有,请从硬盘中删除该文件。代码是否适用于您的情况?
// transliterate text
public function transliterateText($input_text)
{
    $input_russian = transliterator_transliterate('Russian-Latin/BGN', $input_text);
    $input_german_french = transliterator_transliterate('Any-Latin; Latin-ASCII', $input_russian);
    $input_baltic = iconv('UTF-8', 'ASCII//TRANSLIT', $input_german_french);

    $transliterated_text = preg_replace('/[^a-zA-Z_0-9\(\)\n]/', '_', $input_baltic );
    $transliterated_text = strtolower($transliterated_text);

    return $transliterated_text;
}