【问题标题】:Problem with inet_pton() call within Zend frameworkZend 框架中 inet_pton() 调用的问题
【发布时间】:2010-10-28 10:16:47
【问题描述】:

我在使用 Zend 框架(用于 YouTube 数据 API)时遇到问题。我创建了非常简单的 PHP 脚本,用于使用此 API 上传 YT 视频,它几乎可以在任何地方使用——我在 3 台不同的机器(Linux 和 WinXP)上进行了尝试。但是在将它安装到第 4 台机器后,我得到了这个错误:

Error:  inet_pton() [function.inet-pton]: Unrecognized address www.google.com    
Error type/ Nr.:    Warning - 2  
File:   /Zend/Validate/Ip.php    
Line:   62   
Line 62 source:  } else if ((@inet_pton($value) === false) ||(inet_ntop(@inet_pton($value)) !== $valueString)) {

我很确定这一定是一些配置缺陷,但出了什么问题? (PHP 脚本在所有实例上都完全相同)

【问题讨论】:

标签: php api zend-framework youtube


【解决方案1】:

在第 62 行和第 65 行之间修改 /library/Zend/Validate/Ip.php,如:

} else if ((@inet_pton(gethostbyname($value)) === false) 
|| (inet_ntop(@inet_pton(gethostbyname($value))) !== $valueString)) {
        $this->_error();
        return false;
    }

$value 必须是 IP 地址,而不是主机名。

【讨论】:

    猜你喜欢
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    • 1970-01-01
    • 2011-05-31
    • 1970-01-01
    • 2012-08-10
    • 1970-01-01
    相关资源
    最近更新 更多