gpt4 book ai didi

php - Symfony 访问 web 目录之外的 mp3 文件以在浏览器中播放

转载 作者:行者123 更新时间:2023-12-03 02:01:20 25 4
gpt4 key购买 nike

如何访问 app/Resources/userFiles/mp3s 目录中的 mp3?在我的 Controller 内部,我渲染了一个带有 [audio] 标签的 View ,但我需要访问 web 目录之外的 mp3 文件。

  • 进行 ajax 调用以请求 mp3 文件(完成)。
  • 在我的 Controller 中,我想获取该目录中的 mp3,例如:
    $track = "file.mp3";
    $fileLocation = $this->get('kernel')->getRootDir().'/Resources/userFiles/mp3s/'.$track;
  • 然后将该 mp3 传递给具有 [audio] 标签的模板。
    $trackHtml = $this->renderView('MyBundle:Public:track.html.twig', array(
    'id'=>$request->request->get("id"),
    'fileLocation'=>$fileLocation,
    ));
  • 然后通过 ajax 发回响应,以便用户可以听到页面上已在 [audio] 标签中设置的音频(完成)。
    $data = array(
    "track"=>$trackHtml,
    );
    return new JsonResponse($data);

  • 底线,我不知道如何访问该 mp3 以公开显示它。
    is_file($fileLocation = $this->get('kernel')->getRootDir().'/Resources/userFiles/mp3s/'.$track) is TRUE, 

    我只是不能公开文件。

    谢谢。

    最佳答案

    您无法访问 app/Resources来自网络。该文件夹主要用于覆盖模板和存储 Assets (js 和 css 文件)。根据最新的 symfony2 最佳实践 (Web Assets),即使 Assets 也应该存储在 web 目录中。

  • 您可以在 Web 目录中创建指向 app/Resources/mp3 的符号链接(symbolic link).
  • 将其完全移动到 web 下。
  • 使用自定义操作将文件内容输出到浏览器。
  • 关于php - Symfony 访问 web 目录之外的 mp3 文件以在浏览器中播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31306704/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com