gpt4 book ai didi

php - get_meta_tags() 和重定向限制的错误处理?

转载 作者:行者123 更新时间:2023-12-03 07:41:14 25 4
gpt4 key购买 nike

我在脚本中使用 get_meta_tags() 并在某些 URL 上失败(例如)...

警告:get_meta_tags(http://www.kodak.com/) [function.get-meta-tags]:未能打开流:达到重定向限制...

是否可以跳过任何引发错误的结果?还是我应该只使用 @get_meta_tags() 代替?

function getMeta()
{
$tags = get_meta_tags($this->link); //INSERT INTEGRITY CHECK HERE?
$keywords = $tags['keywords'];

if(count($keywords))
{
preg_match_all('/(?<=^|,)\s*((?:[^\s,]+\s*){1,4})(?=\s*(?:,|$))/', $keywords, $m);
$this->keywords = array_slice($m[1], 0, 15);
}
}

最佳答案

您可以使用 error suppression operator - the @ character - 直接在调用 get_meta_tags() 之前.这具有仅关闭该行的所有错误报告的效果,但它通常被认为是一种不好的做法,仅在您用尽其他选项时才使用。

您对此的第一 react 应该是尝试将规范 URL 传递给 get_meta_tags()。在可能的情况下 - 即您应该尝试在重定向链的末尾传递 URL:例如,链接到 http://www.php.net/manual/en/language.types.array.php而不是 http://php.net/array .如果 $this-link来自您无法控制的来源,但是,使用错误抑制可能是您最好的选择:

您可以按如下方式使用它:

$tags = @get_meta_tags($this->link);

这在功能上与此相同:
$errorLevel = error_reporting(0);
$tags = get_meta_tags($this->link);
error_reporting($errorLevel);

您需要更改其余代码以处理 $tags不包含元标记数组的变量。

关于php - get_meta_tags() 和重定向限制的错误处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7060803/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com