【问题标题】:How do I create a directory from hook_install of a module in Drupal 7?如何从 Drupal 7 中模块的 hook_install 创建目录?
【发布时间】:2011-01-11 13:15:22
【问题描述】:

其实我知道怎么创建目录=mkdir.
但是,我需要在服务器中传递一个完整的绝对路径,我不知道如何在hook_install中获取相关路径。
我尝试使用 base_path(),但它返回 '/'。

我想要的路径是站点/默认/文件(在“文件”中创建目录)。

谢谢。

【问题讨论】:

    标签: drupal hook drupal-modules absolute-path drupal-7


    【解决方案1】:

    请使用正确的 API。

    $directory = file_default_scheme() . '://yourdir';
    file_prepare_directory($directory, FILE_CREATE_DIRECTORY | FILE_MODIFY_PERMISSIONS);
    

    【讨论】:

      【解决方案2】:

      你试过mkdir('sites/default/files/yourdir')吗?如果是这样,那会在哪里创建目录?如果没有,为什么不呢?

      相对目录名称是根据工作目录解析的。 Drupal 中的工作目录通常是你的install.phpindex.php 所在的目录。

      【讨论】:

      • 我只是按照你说的做了 mkdir('sites/default/files/mydir') ,它按我的意愿工作。谢谢
      • 如果该模块未在默认站点中使用,这将不起作用。 Drupal 7 已准备好多站点,此解决方案假设它将在默认站点上运行。
      猜你喜欢
      • 1970-01-01
      • 2012-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多