php中获取主机名 协议 IP地址 函数

 更新时间:2016年11月25日 16:49  点击:1538

*/
$hostname=gethostbyaddr($_server['remote_addr']);    //获取主机名
echo $hostname;            //输出结果

//

$hosts=gethostbynamel('localhost');       //获取ip地址列表
print_r($hosts);           //输出数组

//

$protocol='tcp';        //定义协议名称
$get_prot=getprotobyname($protocol);   //返回协议号
if($get_prot==-1)       //如果找不到
{
  echo 'invalid protocol';      //输出错误信息
}
else
{
  echo 'protocol #'.$get_prot;     //输出相应的协议号
}

//

$protocol_num='6';       //定义协议号
$get_prot=getprotobynumber($protocol_num);  //返回协议名称
if($get_prot==-1)       //如果找不到
{
  echo 'invalid protocol';      //输出错误信息
}
else
{
  echo 'protocol #'.$get_prot;     //输出相应的协议名称
}

//

本文章收藏了几种在php中url编码解析函数,如parse_url、rawurldecode、rawurlencode、urldecode、urlencode

下面来看介绍与实例。

parse_url($str url);
把url转换成数组

print_r(parse_url("www.111cn.net"));       //解析url并输出返回数组

/*
url 专用格式字符串还原成普通字符串。

语法: string rawurldecode(string str);

返回值: 字符串

函数种类: 编码处理
 
内容说明


本函数将字符串解码。从 url 的字符串专用格式解成普通字符串。详细的编码解码信息及规格文件可以参考 rfc 1738。

*/

echo rawurldecode('foo%20bar%40baz');      //输出foo bar@baz
/*

string rawurlencode ( string str )


返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。这是在 rfc 1738 中描述的编码,是为了保护原义字符以免其被解释为特殊的 url 定界符,同时保护 url 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱。例如,如果你想在 ftp 的 url 中包含密码:

 

*/
$str="http://www.111cn.net";       //定义字符串
$result=rawurlencode($str);      //对指定字符串编码
echo $result;

/*
urldecode()
url解码
*/         //输出结果

$str="http%3a%2f%2fwww.111cn.net";
$result=urldecode($str);
echo $result;

/*
urlencode()
url编码

*/

$str="http://www.111cn.net";       //定义字符串
$result=urlencode($str);       //对指定字符串编码
echo $result;         //输出结果

string getservbyport ( int $port , string $protocol )

*/
$services=array('80','21','22','23','25','143');      //定义数组
foreach($services as $service)         //循环读取内容
{
  $protocol=getservbyport($service,'tcp');       //返回端口号对应的协议
  echo $service.":".$protocol."<br/>n";       //输出结果
}

/*
int getservbyname ( string $service , string $protocol )
*/

$services=array('http','ftp','ssh','telnet','imap',
'smtp','nicname','gopher','finger','pop3','www');       //定义一个数组
foreach($services as $service)          //循环读取内容
{
  $port=getservbyname($service,'tcp');        //获取数组元素对应端口
  echo $service.":".$port."<br/>n";         //输出结果
 
 
 
}

这两个函数在php中是用得对php代码进行加密与解密码的base64_encode是加密,尔base64_decode是解密了,下面我们看两个简单实例。
base64_encode语法: string base64_decode(string data);


*/

$str='d3d3ljexmwnulm5ldnk7vtu9zlpmzfg=';     //定义字符串
echo base64_decode($str); //www.111cn.net一聚教程网         //输出解码后的内容

/*

base64_encode语法: string base64_encode(string data);


*/

$str='www.111cn.net一聚教程网';         //定义字符串
echo base64_encode($str);  // d3d3ljexmwnulm5ldnk7vtu9zlpmzfg=       //输出编码后的内容

若成功,则返回 true。否则返回 false。如果切换目录失败,php教程 还会发出一条警告。

语法
ftp_chdir(ftp_connection,directory)参数 描述
ftp_connection 必需。规定要使用的 ftp 连接(ftp 连接的标识符)。
directory 必需。规定要切换到的目录。


*/
//设置基础连接
$conn_id=ftp_connect($ftp_server);
//用指定用户名密码登录到ftp服务器
$login_result=ftp_login($conn_id,$ftp_user_name,$ftp_user_pass);
//检查连接是否成功
if((!$conn_id)||(!$login_result))
{
  die("ftp connection has failed !");
}
echo "current directory:", ftp_pwd($conn_id),"n";
//执行切换目录操作
if(@ftp_chdir($conn_id,"somedir"))
{
  echo "current directory is now:", ftp_pwd($conn_id),"n";
}
else
{
  echo "couldn't change directoryn";
}


ftp_cdup($dir);         //执行切换目录操作
/*
ftp_cdup() 函数把当前目录改变为 ftp 服务器上的父目录。

若成功,则返回 true。否则返回 false。

语法
ftp_cdup(ftp_connection)
*/
?>

[!--infotagslink--]

相关文章

  • 使用xampp搭建运行php虚拟主机的详细步骤

    最近,新装了xampp这么一个软件搭建自己的web开发环境,安装完毕自然要虚拟几个目录放自己的项目了,现将如何在xampp搭建的web服务器环境下新建虚拟主机的过程总结分享一下,大致过程分为三步,如下: 第一步: 用记事本打开C:/WIN...2015-10-23
  • 使用FileZilla上传网站文件到GoDaddy主机

    使用FileZilla上传网站文件到GoDaddy主机并不难不过因为是英文的许多的新手不懂,今天我们一起来看看吧,希望文章能够帮助到各位. 上传网站程序文件到GoDaddy主机有两...2016-10-10
  • PHP JS Ip地址及域名格式检测代码

    PHP IP地址格式检测函数复制代码 代码如下:function checkIp($ip){ $ip = str_replace(" ", "", $ip); $ip = strtolower($ip); $ip= str_replace("http://", "", $ip); $ip= str_replace("https://", ""...2013-10-04
  • 解决使用了nginx获取IP地址都是127.0.0.1 的问题

    这篇文章主要介绍了解决使用了nginx获取IP地址都是127.0.0.1 的问题,获取i工具的完整代码文中给大家提到,具体实例代码跟随小编一起看看吧...2021-09-18
  • docker容器与宿主机的数据交互方式总结

    这篇文章主要给大家介绍了关于docker容器与宿主机的数据交互,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-09
  • HostUS KVM便宜美国VPS主机购买过程及配置速度综合性能参数

    下面我们来看一篇关于HostUS KVM便宜美国VPS主机购买过程及配置速度综合性能参数的例子,希望这篇教程能够为大家带来帮助,具体的如下文介绍。 在众多便宜VPS主机商...2016-10-10
  • POP3协议命令原始码及工作原理

    http://www.linuxforum.net Jephe Wu (2001-04-21 18:17:49) 一 简介: 1. POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。脱机模型即不能在...2016-11-25
  • node.js 基于 STMP 协议和 EWS 协议发送邮件

    这篇文章主要介绍了node.js 基于 STMP 协议和 EWS 协议发送邮件的示例,帮助大家更好的理解和使用node.js,感兴趣的朋友可以了解下...2021-02-15
  • php 获得用户的真实IP地址

    一个段经典的代码可以用来获取用户的真实IP地址,包括可以是内网或是外网,有需要的朋友可以参考一下。 代码如下 复制代码 /** * 获得用户的...2016-11-25
  • 在VMware虚拟机中查看Linux的IP地址的方法

    这篇文章主要介绍了在VMware虚拟机中查看Linux的IP地址的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-04-16
  • 虚拟主机与独立服务器

    虚拟主机利用网络空间技术,把一台服务器分成许多的“虚拟主机”,每一台网络空间都具有独立的域名和IP地址,具有完整的Internet服务器功能。网络空间之间完全独立,在外界看...2017-07-06
  • 详解如何调用zabbix API获取主机

    Zabbix API开始扮演着越来越重要的角色,尤其是在集成第三方软件和自动化日常任务时。很难想象管理数千台服务器而没有自动化是多么的困难。Zabbix API为批量操作、第三方软件集成以及其他作用提供可编程接口。这篇文章主要介绍了如何调用zabbix API获取主机。...2021-05-07
  • 在apache下限制每个虚拟主机的并发数

    下载模块: http://www.nowhere-land.org/prog ... st_limit-0.4.tar.gz 官方网址: http://www.nowhere-land.org/programs/mod_vhost_limit/ 安装: apxs -c mod_vhost_...2016-01-28
  • .Net WInform开发笔记(二)Winform程序运行结构图及TCP协议在Winform中的应用

    中午没事,把去年刚毕业那会画的几张图翻出来了,大概介绍Winform应用程序运行的过程,以及TCP协议在Winform中的应用。感兴趣的朋友可以了解下;如果有Windows消息机制等基础,很好理解这两张...2020-06-25
  • PHP根据IP地址判断城市实现城市切换或跳转代码

    先要获取ip地址相当简单,下面先介绍两种获取IP地址的代码,后面需要利用QQIP库来查找当前IP是属于那个IP段然后得出城市字段并返回。 获取IP地址 代码如下 ...2016-11-25
  • zabbix执行远程主机的脚本或指令详解

    这篇文章主要介绍了在zabbix执行远程主机的脚本或指令,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-07
  • Websocket协议详解及简单实例代码

    这篇文章主要介绍了Websocket协议详解及简单实例代码的相关资料,这里对websocket 协议进行详细介绍,并附简单实例代码,需要的朋友可以参考下...2016-12-19
  • 详解Nginx虚拟主机配置中server_name的具体写法

    这篇文章主要介绍了Nginx虚拟主机配置中server_name的具体写法,server_name服务器名是虚拟主机中必须配置的重要参数,需要的朋友可以参考下...2016-05-22
  • 清平云 betweb云服务完美版虚拟主机自动化套件使用介绍

    这篇文章主要介绍了清平云 betweb云服务完美版虚拟主机自动化套件使用介绍,需要的朋友可以参考下...2016-09-28
  • 分享十条实用的Swift小提示

    是时候使用易入手又全面的Swif语言为iOS和mac OS X做应用开发了,下面这篇文章主要给大家分享介绍了十条实用的Swift小提示的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧...2020-06-30