几种js获取url及参数, 并分析url的任意部分

 

 

1.获取URL
获取url方法,直接用location就可以了,window.location或window.loation.href也可以。

  1. <script language="javascript"> 
  2. var t1=location
  3. var t2=window.location
  4. var t3=window.location.href; 
  5. document.write("location="+t1+"<br />"+"window.location="+t2+"<br />"+"window.location.href="+t3); 
  6. </script> 

2.分析URL
运用location获取的url属性为object,要对其进行字符串" title="字符串">字符串的分析操作,需要先将其转换为字符串" title="字符串">字符串。

  1. <script language="javascript" type="text/javascript"> 
  2. var t1=location
  3. var t2=window.location
  4. var t3=window.location.href; 
  5. document.write("location型为: "+typeof(t1)+"<br />"+"window.location型为: "+typeof(t2)+"<br />"+"window.location.href型为: "+typeof(t3)); 
  6. </script> 

location进行处理,首先将其转换为字符串" title="字符串">字符串,用函数toString(),URL.toString();

  1. <script language="javascript" type="text/javascript"> 
  2. var t1=location
  3. var URL=t1.toString(); 
  4. document.write("location型为: "+typeof(t1)+"<br />"+"URL型为: "+typeof(URL)); 
  5. </script> 

在URL中查找需要的内容,比如我我们需要查找id的值,根据页面的URL可以看出id=后面就是,进行如下查找

  1. <script language="javascript" type="text/javascript"> 
  2. window.location.href="http://http://guokai2009.blog.hexun.com/default.xasp?id=70"; 
  3. var t1=location
  4. var URL=t1.toString(); 
  5. document.write("location型为: "+typeof(t1)+"<br />"+"URL型为: "+typeof(URL)); 
  6. if(URL.indexOf("id")==-1){ 
  7. alert("there is no id!"); 
  8. }else{ 
  9. var id=URL.split("id="); 
  10. alert(id[1]); 
  11. </script> 

获取URL里的文件夹名:

  1. <script language="javascript" type="text/javascript"> 
  2. var folder=window.location.pathname; 
  3. var f=new Array(); 
  4. f=folder.split("/"); 
  5. alert("文件地址为:"+f[1]); 
  6. </script> 

另附一些URL参数

完整的URL由这几个部分构成:
scheme://host:port/path?query#fragment

scheme = 通信协议 (常用的http,ftp,maito等)
host = 主机 (域名或IP)
port = 端口号
path = 路径

query = 查询
可选,用于给动态网页(如使用CGI、ISAPI、PHP/JSP/ASP/ASP.NET等技术制作的网页)传递参数,可有参数,用”&”符号隔开,每个参数的名和值用”=”符号隔开。

fragment = 信息片断
字符串" title="字符串">字符串,用于指定网络资源中的片断。例如一个网页中有个名词解释,可使用fragment直接定位到某一名词解释。(也称为锚点.)

对于这样一个URL
http://hexun.com.com:80/seo/?ver=1.0&id=6#imhere

我们可以用javascript获得其中的各个部分
1, window.location.href
整个URl字符串" title="字符串">字符串(在浏览器中就是完整地址栏" title="地址栏">地址栏)

2,window.location.protocol
URL 的协议部分
本例返回值" title="返回值">返回值:http:

3,window.location.host
URL 的主机部分
本例返回值" title="返回值">返回值:hexun.com

4,window.location.port
URL 的端口部分
如果采用默认的80端口(update:即使添加了:80),那么返回值" title="返回值">返回值并不是默认的80而是空字符
本例返回值" title="返回值">返回值:”"

5,window.location.pathname
URL 的路径部分(就是文件地址)
本例返回值" title="返回值">返回值:/seo/

6,window.location.search
查询(参数)部分
除了给动态言赋值以外,我们同样可以给静态页面,并使用javascript来获得相信应的参数值
本例返回值" title="返回值">返回值:?ver=1.0&id=6

7,window.location.hash
锚点
本例返回值" title="返回值">返回值:#imhere

最后介绍一个郭恺刚刚使用的 这个能让你获取任何一部分 

  1. <script language=javascript> 
  2. nction" title="function">function lename" title="filename">filename() { 
  3.     var a= document.location.href; 
  4.     var n1=a.lastIndexOf('/')+1    
  5.     var n2=a.lastIndexOf('_d.html') 
  6.     a=a.substring(n1,n2) 
  7.     alert(a);  

  8. lename" title="filename">filename() 
  9. </script> 

将取出当前地址文件名字,不带后缀

//a.lastIndexOf(\'/\') 从右向左取出第一个“/”的位置,也可以写成a.lastIndexOf(\'/\',0)第二个参数0,表示从左端0位置算起。第二个参数不写默认为0

//另外一个函数就是indexOf(\'/\',0),是从左向右查找。 第二个参数0,表示从左端0位置算起

PHP的FTP操作函数大全

        ftp_connect: 打开 FTP 链接。
  ftp_login: 登入 FTP 服务器。
  ftp_pwd: 取得目前所在路径。
  ftp_cdup: 回上层目录。
  ftp_chdir: 改变路径。
  ftp_mkdir: 建新目录。
  ftp_rmdir: 删除目录。
  ftp_nlist: 列出指定目录中所有文件。
  ftp_rawlist: 详细列出指定目录中所有文件。
  ftp_systype: 显示服务器系统。
  ftp_pasv: 切换主被动传输模式。
  ftp_get: 下载文件。
  ftp_fget: 下载文件,并存在已开的档中。
  ftp_put: 上传文件。
  ftp_fput: 上传已打开文件。
  ftp_size: 获得指定文件的大小。
  ftp_mdtm: 获得指定文件的最后修改时间。
  ftp_rename: 将文件改名。
  ftp_delete: 将文件删除。
  ftp_quit: 关闭 FTP 连接。

  ftp_connect 打开 FTP 链接。
  语法: int ftp_connect(string host, int [port]);
  返回值: 整数
  函数种类: 网络系统
  内容说明: 本函数可打开 FTP 服务器的链接。参数 host 为 FTP 服务器的网址。参数 port 通常省略,若 FTP 服务器的埠号 (port) 不是 21 时才需要加本参数。若无错误则返回连接代码
,失败则返回 false 值。
  参考: ftp_quit()

  ftp_login 登入 FTP 服务器。
  语法: boolean ftp_login(int ftp_stream, string username, string password);
  返回值: 布尔值
  函数种类: 网络系统
内 容说明: 本函数可登入已链接的 FTP 服务器。参数 ftp_stream 为 FTP 的连接代码。参数 username 及 password 分别为服务器的使用者帐号及密码,通常 anonymous 为公开的使用帐号,密码则为 Email。成功则返回 true 值。

  ftp_pwd 取得目前所在路径。
  语法: string ftp_pwd(int ftp_stream);
  返回值: 字符串
  函数种类: 网络系统
  内容说明: 本函数用来取得目前在 FTP 服务器中的路径。参数 ftp_stream 为 FTP 的连接代码。若有错误则返回 NULL 值。

  ftp_cdup 回上层目录。
  语法: boolean ftp_cdup(int ftp_stream);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来回到上层目录,也就是目前目录的父目录。参数 ftp_stream 为 FTP 的连接代码。成功则返回 true 值。

  ftp_chdir 改变路径。
  语法: boolean ftp_chdir(int ftp_stream, string directory);
  返回值: 布尔值
  函数种类: 网络系统
内容说明: 本函数用来改变路径。参数 ftp_stream 为 FTP 的连接代码。参数 directory 为欲前往的目录。成功则返回 true 值,失败则返回 false 值。

  ftp_mkdir 建新目录。
  语法: string ftp_mkdir(int ftp_stream, string directory);
  返回值: 字符串
  函数种类: 网络系统
  内容说明: 本函数用来建立新的目录。参数 ftp_stream 为 FTP 的连接代码。参数 directory 为欲建立的新目录。成功则返回已建立的目录名,失败则返回 false 值。

  ftp_rmdir 删除目录。
  语法: boolean ftp_chdir(int ftp_stream, string directory);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来删除空目录。参数 ftp_stream 为 FTP 的连接代码。参数 directory 为欲删除的目录。成功则返回 true 值,失败则返回 false 值。

  ftp_nlist 列出指定目录中所有文件。
  语法: array ftp_nlist(int ftp_stream, string directory);
  返回值: 数组
  函数种类: 网络系统
  内容说明: 本函数用来列出指定路径中的所有文件名称。参数 ftp_stream 为 FTP 的连接代码。参数 directory 为指定的目录。成功则返回文件名称的数组,失败则返回 false 值。

  ftp_rawlist 详细列出指定目录中所有文件。
  语法: array ftp_rawlist(int ftp_stream, string directory);
  返回值: 数组
  函数种类: 网络系统
  内容说明: 本函数可详细列出指定路径中的所有文件名称。参数 ftp_stream 为 FTP 的连接代码。参数 directory 为指定的目录。成功则返回文件名称的数组,失败则返回 false 值。

  ftp_systype 显示服务器系统。
  语法: string ftp_systype(int ftp_stream);
  返回值: 字符串
  函数种类: 网络系统
  内容说明: 本函数可显示远端 FTP 服务器的系统,也就等于对 FTP 服务器下 system 或 syst 指令。参数 ftp_stream 为 FTP 的连接代码。成功则返回字符串,如: "215 UNIX Type: L8",失败则返回 false 值。

  ftp_pasv 切换主被动传输模式。
  语法: boolean ftp_systype(int ftp_stream);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数可以切换成主动传输或者被动传输模式,也就等于对 FTP 服务器下 passive 或 pass 指令。参数 ftp_stream 为 FTP 的连接代码。成功则返回 true 值,失败则返回 false 值。

  ftp_get 下载文件。
  语法: boolean ftp_get(int ftp_stream, string local_file, string remote_file, int mode);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来下载指定的文件。参数 ftp_stream 为 FTP 的连接代码。参数 local_file 为欲存成本地端的文件名。参数 remote_file 为欲下载的文件名。参数 mode 的值有 FTP_ASCII 及 FTP_BINARY 二种,分别表示文字档宁或者是二进位文件。成功则返回 true 值,失败则返回 false 值。

  ftp_fget 下载文件,并存在已开的文件中。
  语法: boolean ftp_fget(int ftp_stream, int fp, string remote_file, int mode);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来下载指定的文件。参数 ftp_stream 为 FTP 的连接代码。参数 fp 为本地端的已开文件的文件指针。参数 remote_file 为欲下载的文件名。参数 mode 的值有 FTP_ASCII 及 FTP_BINARY 二种,分别表示文字档宁或者是二进位文件。成功则返回 true 值,失败则返回 false 值。

  ftp_put 上传文件。
  语法: boolean ftp_put(int ftp_stream, string remote_file, string local_file, int mode);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来上传指定的文件。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file 为欲存在远端的文件名。参数 local_file 为欲上传文件的文件名。参数 mode 的值有 FTP_ASCII 及 FTP_BINARY 二种,分别表示文字档宁或者是二进位文件。成功则返回 true 值,失败则返回 false 值。

  ftp_fput 上传已打开文件。
  语法: boolean ftp_fput(int ftp_stream, string remote_file, int fp, int mode);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来上传指定的文件。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file 为欲存在远端的文件名。参数 fp 为欲上传的已开文件文件指针。参数 mode 的值有 FTP_ASCII 及 FTP_BINARY 二种,分别表示文字档宁或者是二进位文件。成功则返回 true 值,失败则返回 false 值。

  ftp_size 获得指定文件的大小。
  语法: int ftp_size(int ftp_stream, string remote_file);
  返回值: 整数
  函数种类: 网络系统
  内容说明: 本函数用来获取 FTP 服务器上指定文件的大小。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file 为欲获取大小文件名。返回值为文件大小,失败则返回 -1 值。

  ftp_mdtm 获得指定文件的最后修改时间。
  语法: int ftp_mdtm(int ftp_stream, string remote_file);
  返回值: 整数
  函数种类: 网络系统
  内容说明: 本函数用来获取 FTP 服务器上指定文件的最后修改时间。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file 为欲获取修改时间的文件名。返回值为 UNIX 的时间格式 (timestamp),失败则返回 -1 值。

  ftp_rename 将文件改名。
  语法: boolean ftp_rename(int ftp_stream, string from, string to);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数可将远端 FTP 服务器的文件改名字,值的 注意的是权限不符时无法改动。参数 ftp_stream 为 FTP 的连接代码。参数 from 为原来的文件名。参数 to 为欲改的新文件名。成功则返回 true 值,失败则返回 false 值。

  ftp_delete 将文件删除。
  语法: boolean ftp_delete(int ftp_stream, string remote_file);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数可将远端 FTP 服务器的文件删除,若是权限不符则无法删除。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file 为欲删除的文件名。成功则返回 true 值,失败则返回 false 值。

  ftp_quit 关闭 FTP 连接。
  语法: boolean ftp_quit(int ftp_stream);
  返回值: 布尔值
  函数种类: 网络系统
  内容说明: 本函数用来将远端 FTP 服务器连接关闭。参数 ftp_stream 为 FTP 的连接代码。成功则返回 true 值,失败则返回 false 值。