PHP:gethostbyname 错误

2024-02-26

我在用gethostbyname()获取应用程序中域的 IP 地址。

在某些情况下,还会检查“50.9.49”等无效地址。

echo gethostbyname('50.9.49'); // returns 50.9.0.49

在这种情况下gethostbyname应返回 false 或未修改的无效 IP 地址。但是该函数返回修改后的 IP 地址50.9.0.49.

看起来像是 php 中的一个错误。快速修复似乎是之前检查无效的数字地址,还有其他建议吗?


PHP's gethostbyname实际上uses http://gcov.php.net/PHP_5_4/lcov_html/standard/dns.c.gcov.php底层操作系统的结果gethostbyname,例如,来自 Linux 的netdb.h或Windows'Winsock2.h。真正产生返回值的是那些函数,而不是 PHP。

/* {{{ php_gethostbyname */
static char *php_gethostbyname(char *name)
{
    struct hostent *hp;
    struct in_addr in;

    hp = gethostbyname(name);

    if (!hp || !*(hp->h_addr_list)) {
        return estrdup(name);
    }

    memcpy(&in.s_addr, *(hp->h_addr_list), sizeof(in.s_addr));

    return estrdup(inet_ntoa(in));
}
/* }}} */
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP:gethostbyname 错误 的相关文章

随机推荐

  • 使用正则表达式限制文本字段/数字字段中的输入字符?

    我在 ExtJS Form 中使用 numberField 并只想输入 0 99 范围内的正数 并且它应该只接受 2 个字符 且不超过 2 个 xtype textfield allowNegative false allowDecimal
  • SwiftUI 中的比例高度(或宽度)

    我开始探索 SwiftUI 但找不到一种方法来获得简单的东西 我希望 View 具有成比例的高度 基本上是其父级高度的百分比 假设我有 3 个垂直堆叠的视图 我想 第一个高度为 其父级高度 的 43 第二个高度为 其父级高度的 37 最后一
  • 如何在逻辑应用程序中循环遍历数组?

    我已设法将所有用户数据放入数组中 请参阅here https stackoverflow com questions 59107093 how to store all azure ad user group members in an a
  • 使用 C++、libpng 和 OpenMP 并行化 PNG 文件创建

    我目前正在尝试在 C 中实现一个基于 libpng 的 PNG 编码器 它使用 OpenMP 来加速压缩过程 该工具已经能够从各种图像格式生成 PNG 文件 我将完整的源代码上传到pastebin com 这样你就可以看到我到目前为止所做的
  • 在 null Laravel 上调用成员函数 Roles()

    我正在 Laravel 中使用户角色发挥作用 一切都工作正常 但从任何地方都出现错误 调用成员函数 Roles 或 null 这是我发送请求的 html td td
  • 未授权端点,请检查设置->安全->远程站点设置端点

    我无法通过 Twilio API 发送短信 我得到了以下异常 ERROR 未授权端点 请检查设置 gt 安全 gt 远程站点设置 端点 url global class SampleSMSTest future callout true p
  • 将项目添加到 Linux 内核链表

    我在用linux list h在我的用于实现队列 堆栈行为的代码中 头部 尾部添加API如下 static inline void list add struct list head new struct list head head li
  • 缓冲区溢出攻击(攻击实验室第 2 阶段)

    我有一个缓冲区溢出实验室 我必须为一个名为攻击实验室 http csapp cs cmu edu 3e attacklab pdf 我处于实验室的第二阶段 我必须将代码作为漏洞利用字符串的一部分注入 以使程序指向函数 touch2 的地址
  • 数据库连接和 OutOfMemoryError:Java 堆空间

    去年夏天 我制作了一个 Java 应用程序 它可以解析一些 PDF 文件并获取它们包含的信息并将其存储在 SQLite 数据库中 一切都很好 我每周左右都会向数据库添加新文件 没有任何问题 现在 我正在尝试提高应用程序的速度 我想看看如果我
  • 将广告注入 Google Chrome 扩展程序

    我正在开发一个 google chrome 扩展 并计划使用允许的功能注入广告 我检查过 广告行为 前面写着 此扩展程序将广告注入一些第三方网站 我的问题是 如何以及在哪里提及广告来源 比如说 如果我想显示 google adsense 我
  • PhoneGap 的 Flash 插件

    我正在phonegap 中开发一个html css javascript 应用程序 在该应用程序中 我需要一个 JavaScript 的 Flash 插件编码 以便为我的应用程序目的启用音频 视频 如果有人知道解决方案 请尽快回复我 您必须
  • 数据集与带有存储过程的实体框架

    整个问题已被重写以更加清晰 新项目设计 SQL Server 2012 Visual Studio 2012 Net 4 5 业务逻辑将在存储过程中实现 ASP Net 网络表单 WCF SOAP XML Web 服务使用 DBA 提供的存
  • Android ViewHolder背景颜色

    我正在创建一个 Android 应用程序 其中包含带有嵌套 CardView 的 RecyclerView 我需要将其他所有卡片更换为不同的颜色 我在用 Override覆盖onBindViewHolder ViewHolder vh in
  • 如何从 Google 新闻 RSS 中抓取 Google 新闻文章内容?

    将来 可能还很遥远 因为我还是个新手 我想做数据分析 基于我从Google News RSS获得的新闻内容 但为此 我需要访问该内容 这就是我的问题 使用网址 https news google cl news rss https news
  • JTextField 在最小化时调整大小

    我在 JFrame 中有一个 JTextField 和一个 JTextArea 但是 当应用程序运行时 如果我最小化窗口 JTextField 的大小就会调整 它的高度通常会增加一倍或三倍 但每次调整大小的方式并不一致 我不知道为什么会发生
  • 在 Plotly 中的单个迹线中显示多个图例

    So the docs https plotly com python legend 几乎使它看起来像是为同一项目的不同项目显示多个图例trace plotly graph objs Scatter 不是这样的东西Plotly默认支持 您应
  • 如何使用 xmlValue 使 xpathSApply 输出长度节点向量?

    可以说我有以下内容 library XML my xml lt
  • JSONSchema - 必需的属性依赖于父属性

    我想根据根模式中属性的存在在数组子模式中应用额外的 必需 属性 我的架构设置如下 schema http json schema org draft 07 schema type object required isParentDepend
  • 启动 Android Netflix 应用程序并传递视频 ID

    在我正在开发的应用程序中 我想支持 Netfilx 流媒体 我打算通过简单地启动 Netflix 并传递特定的 URI 来实现此目的 以便它在启动时播放特定的视频 简单吧 好吧 问题是我不确定如何在用于启动 Activity 的 Inten
  • PHP:gethostbyname 错误

    我在用gethostbyname 获取应用程序中域的 IP 地址 在某些情况下 还会检查 50 9 49 等无效地址 echo gethostbyname 50 9 49 returns 50 9 0 49 在这种情况下gethostbyn