我有一个PHP脚本,它会对Instagram的API进行各种调用,然后将它们分配给数组以便稍后显示。
它是这样的:
array_push($this->url_array, $result->data[$i]->link);
对多个字段做同样的事情。
现在,因为不是每个返回的帖子都会有所有相同的数据,我经常会收到这样的通知:
Notice: Undefined offset: 2
我可以使用以下代码轻松删除它们
if($result->data[$i]->link != NULL)
{
array_push($this->url_array, $result->data[$i]->link)
}
else
{
array_push($this->url_array, NULL);
}
我需要总是在那里有一些价值,否则它会稍后显示表格,因为我生成的每个数组都需要相同的长度。
我的问题是,我是否会看到使用IF语句提高速度而不是隐藏通知?该脚本按两种方式工作,但我正处于我想尽可能优化它的阶段。是否值得在IF语句中编写10个左右的数组推送?
我最初的直觉是否定的,因为在任何一种情况下,它仍然会向数组中添加一个元素。但是,我不知道PHP如何处理幕后的错误,以及该过程是否会增加额外的时间。
答案 0 :(得分:0)
事实证明,做IF语句确实要快得多。
经过一些测试后,我可以通过在尝试分配之前检查值来有效地加快脚本的速度
无论如何设置错误报告,PHP在后台仍然会生成并格式化通知消息。因此无论它是否显示在屏幕上,它仍然花费时间和资源来创建这些错误,这似乎是一个严重的时间阻力。