如何在 PHP 中获取当前服务器路径、url 域、文件名或脚本名称

杰舍尔克

在 PHP 中使用脚本时,我需要知道它的当前文件夹和路径是什么,从服务器的角度和域 url 的角度来看。

我还需要带和不带扩展名的文件名或脚本名称,以及带或不带任何传入参数的文件名或脚本名。

例如,如果我调用以下内容:

https://example.com/somefolder/anotherfolder/test.php?hey=there

我想取回所有这些单独的部分:

test
test.php
test.php?hey=there
hey=there
https://example.com
/home/myserver/public_html
/somefolder/anotherfolder
杰舍尔克

所以这是我的通用解决方案,它将分解所有内容,然后允许您根据需要将所有内容重新组合在一起。

请参阅下面的输出以将脚本放在以下位置(然后调用它):https : //example.com/somefolder/anotherfolder/test.php?hey=there

<?php
  // filename only including extension but no path
  $script_name_with_ext = basename(__FILE__);

  // filename only with no extension and no path
  $script_name_no_ext = basename(__FILE__, ".php"); 

  // filename only including extension and all arguments but no path
  $script_name_with_args = basename($_SERVER["REQUEST_URI"]); 

  // arguments only with no filename
  $args_no_script_name = str_replace ( $script_name_with_ext."?" , "", $script_name_with_args); 

  // path portion only with no domain and no server portions
  $path_only = pathinfo($_SERVER['PHP_SELF'], 1); 

  // domain url portion only with no path
  $domain_no_path = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://{$_SERVER['HTTP_HOST']}"; 

  // domain url including path
  $domain_with_path =  $domain_no_path.$path_only; 

  // domain url and path and filename with extension
  $full_domain = $domain_with_path."/".$script_name_with_ext; 

  // server including path
  $server_with_path = str_replace ("/".$script_name_with_ext , "", __FILE__); 

  // server only with no path
  $server_no_path = str_replace($path_only, "", $server_with_path); 

  // server and path and filename with extension
  $full_server = $server_with_path."/".$script_name_with_ext; 

  // output everything here
  echo $script_name_no_ext."<br>";
  echo $script_name_with_ext."<br>";
  echo $script_name_with_args."<br>";
  echo $args_no_script_name."<br><br>";
  echo $path_only."<br><br>";
  echo $server_no_path."<br>";
  echo $server_with_path."<br>";
  echo $full_server."<br>";
  echo $full_server."?".$args_no_script_name."<br><br>";
  echo $domain_no_path."<br>";
  echo $domain_with_path."<br>";
  echo $full_domain."<br>";
  echo $full_domain."?".$args_no_script_name."<br><br>";
?>

输出将如下所示:

test
test.php
test.php?hey=there
hey=there

/somefolder/anotherfolder

/home/myserver/public_html
/home/myserver/public_html/somefolder/anotherfolder
/home/myserver/public_html/somefolder/anotherfolder/test.php
/home/myserver/public_html/somefolder/anotherfolder/test.php?hey=there

https://example.com
https://example.com/somefolder/anotherfolder
https://example.com/somefolder/anotherfolder/test.php
https://example.com/somefolder/anotherfolder/test.php?hey=there

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PHP中获取文件的URL路径

来自分类Dev

如何在PHP中以最佳方式从URL获取带有扩展名的文件名?

来自分类Dev

如何从服务器请求中获取文件名?

来自分类Dev

如何从服务器请求中获取文件名?

来自分类Dev

如何在PhantomJS中获得当前的脚本名称?

来自分类Dev

如何在PhantomJS中获得当前的脚本名称?

来自分类Dev

如何从PHP中的变量(URL)获取文件名?

来自分类Dev

如何在Groovy中获取脚本名称

来自分类Dev

PHP:输出当前脚本名称

来自分类Dev

如何在Spring bean配置文件中的tomcat中获取服务器主目录路径

来自分类Dev

如何在url中传递长文件名并使用php函数下载文件?

来自分类Dev

如何在bash脚本中验证文件名?

来自分类Dev

如何从PHP服务器获取$ .ajax的zip文件

来自分类Dev

如何在服务器上从PHP中的MySQL Query保存CSV文件

来自分类Dev

如何在Web服务器(PHP)中执行CUDA文件

来自分类Dev

如何在find -exec中获取文件的基本名称

来自分类Dev

如何使用php或javascript从服务器文件夹中的URL保存图像?

来自分类Dev

如何在mawk中打印自己的脚本名称?

来自分类Dev

如何在 wordpress 站点中使用 PHP 查找散列的 bundle.js 文件并将适当的文件名插入到脚本标记中?

来自分类Dev

如何在Kotlin中获取当前类的文件名

来自分类Dev

如何在Dojo中获取当前文件名

来自分类Dev

如何在php中以.txt扩展名创建随机文件名?

来自分类Dev

如何在PHP的锚标记之间获取文本(文件名)?

来自分类Dev

如何在PHP中获取服务器时间而不是本地时间

来自分类Dev

如何在Google脚本中获取当前文件的名称?

来自分类Dev

如何从PHP中的URL中删除文件名

来自分类Dev

如何获取PHP索引文件中的URL路径?

来自分类Dev

如何从PHP请求中获取引用文件名

来自分类Dev

如何在目录中的服务器上列出文件名?

Related 相关文章

  1. 1

    如何在PHP中获取文件的URL路径

  2. 2

    如何在PHP中以最佳方式从URL获取带有扩展名的文件名?

  3. 3

    如何从服务器请求中获取文件名?

  4. 4

    如何从服务器请求中获取文件名?

  5. 5

    如何在PhantomJS中获得当前的脚本名称?

  6. 6

    如何在PhantomJS中获得当前的脚本名称?

  7. 7

    如何从PHP中的变量(URL)获取文件名?

  8. 8

    如何在Groovy中获取脚本名称

  9. 9

    PHP:输出当前脚本名称

  10. 10

    如何在Spring bean配置文件中的tomcat中获取服务器主目录路径

  11. 11

    如何在url中传递长文件名并使用php函数下载文件?

  12. 12

    如何在bash脚本中验证文件名?

  13. 13

    如何从PHP服务器获取$ .ajax的zip文件

  14. 14

    如何在服务器上从PHP中的MySQL Query保存CSV文件

  15. 15

    如何在Web服务器(PHP)中执行CUDA文件

  16. 16

    如何在find -exec中获取文件的基本名称

  17. 17

    如何使用php或javascript从服务器文件夹中的URL保存图像?

  18. 18

    如何在mawk中打印自己的脚本名称?

  19. 19

    如何在 wordpress 站点中使用 PHP 查找散列的 bundle.js 文件并将适当的文件名插入到脚本标记中?

  20. 20

    如何在Kotlin中获取当前类的文件名

  21. 21

    如何在Dojo中获取当前文件名

  22. 22

    如何在php中以.txt扩展名创建随机文件名?

  23. 23

    如何在PHP的锚标记之间获取文本(文件名)?

  24. 24

    如何在PHP中获取服务器时间而不是本地时间

  25. 25

    如何在Google脚本中获取当前文件的名称?

  26. 26

    如何从PHP中的URL中删除文件名

  27. 27

    如何获取PHP索引文件中的URL路径?

  28. 28

    如何从PHP请求中获取引用文件名

  29. 29

    如何在目录中的服务器上列出文件名?

热门标签

归档