小编bbx*_*bby的帖子

PHP页面的可接受内存使用量是多少?

我正在构建一个查询MySQL数据库的网页,并且(当前)生成一个纯文本列表的结果.完成单个记录的查询类似于:

  • 电影(标题,描述等)
    • 电影中的演员(姓名,性别)
    • 相关电影

出于好奇,我已经使用memory_get_peak_usage()memory_get_usage():

start   110,440 bytes
peak    656,056 bytes
end 637,976 bytes
time    0.008 seconds

以上是没有找到记录!

有40条记录我达到了大约2MB,虽然时间保持不变.

我知道过早的优化是邪恶的,但我必须要问:

我需要做一些改造吗?这个内存使用是否正常?什么被认为过度?

php

15
推荐指数
2
解决办法
7136
查看次数

对象应该实现迭代器还是包含实现迭代器的另一个对象

我试图了解SPL迭代器,我想出了两种方法来处理它.我看到第一个版本不那么复杂,但第二个版本有它的构图感觉(我认为).

我没看到的是哪一个优于另一个?或者我只是让这复杂化?

这是我的想法:

该对象实现了一个迭代器:

class BoxOfChocolates implements Iterator {

  private $id
  private $name; // e.g. Valentine's Heart Box
  private $maker; // e.g. Hersheys
  private $items; // array

  public function getChocolates() {
    $query = ...
    foreach($rows as $row) {
      $this->_items[] = new Chocolate() ...
    }
  }

  // ... necessary iterator implementation stuff


}
Run Code Online (Sandbox Code Playgroud)

该对象包含一个可迭代的对象:

class BoxOfChocolates {

  private $id;
  private $name;
  private $maker;
  private $items; // chocolates object

  public function getChocolates() {
    $this->items = new Chocolates();
    $this->items->getChocolates();
  }

}


class Chocolates …
Run Code Online (Sandbox Code Playgroud)

php iterator design-patterns

5
推荐指数
1
解决办法
811
查看次数

标签 统计

php ×2

design-patterns ×1

iterator ×1