小编Mil*_*kov的帖子

PHP:析构函数vs register_shutdown_function

我有一个PHP类,可以动态创建PNG图像并将其发送到浏览器.PHP手册说我需要确保在结束时调用imagedestroy函数来释放内存.现在,如果我没有使用类,我会得到一些像这样的代码:

function shutdown_func() 
{
    global $img;
    if ($img)
        imagedestroy($img);
}
register_shutdown_function("shutdown_func");
Run Code Online (Sandbox Code Playgroud)

但是,我认为我班级的适当位置是在类'析构函数中调用imagedestroy.

我没有发现析构函数是否以与关闭函数相同的方式调用?例如,如果用户在浏览器中按下STOP按钮,则执行停止.

注意:无论您在答案中写什么,请指向支持它的一些文章或手册页(URL).

php destructor memory-leaks image-processing

12
推荐指数
1
解决办法
5946
查看次数

在Yii中使用资产的正确方法是什么?

我注意到Yii在assets目录中创建了一组奇怪的目录(名称如8523d23或10s89b92),这甚至发生在运行时.例如,我的一个表获得了超过10条记录,分页被踢了,我在名为pager.css的assets子目录中获得了一个新文件.

当我将我的网站从测试移动到生产时,我应该复制所有这些,还是只创建一个空的"assets"目录,它将在运行时填充?

如果我想添加一些新的jQuery插件,我该怎么办?

例如,我想添加jquery.charcounter.js,我将它复制到资产还是yii/framework/web/js/source?如果我做后者,我如何获得HTML页面输出中包含的.js文件?

php assets jquery-plugins yii

12
推荐指数
2
解决办法
2万
查看次数

2D游戏引擎设计有哪些好资源?

我在业余时间使用C++和DirectX搞乱2D游戏开发.我发现企业问题域建模方法没有我想要的那么多;)

我或多或少都在寻找与基本游戏引擎设计相当的"最佳实践".实体应如何相互作用,动画和声音应如何在理想世界中表现,等等.

谁有他们可以推荐的好资源?

c++ directx

11
推荐指数
2
解决办法
1万
查看次数

PHP框架的中间复杂性,在CodeIgniter和Yii之间?

容易像CI(这意味着强制性好,简单,最新的文档).但也有一些比CI更多的功能.

Yii有很多功能,但它也更复杂(它有点迫使你必须使用它的很多功能).这意味着为您的网络应用添加一些功能需要三倍的时间,因为您必须找出许多新的小功能Yii.

这有点像CI在需要的时候"离开你的方式",Yii妨碍你,如果你不这样做,它会破坏.

CI中缺少的功能在这个新的"中间"PHP框架中很有用:

  • 代码生成(crud).
  • 验证.
  • 访问控制.
  • 布局.
  • 窗口小部件.
  • 易于/自动分页(如yii)
  • 简单的uri参数

Yii给我带来问题的地方:

就像每个小任务都有一些内置功能(这很好),但是,你必须使用内置功能,否则会发生不好的事情.(CI让你不受欢迎,但是做得太多,Yii帮了很多,但有时候太过分了,它迫使你筛选文档,以便你发现这些功能,如果没有它们你就无法完成一项任务,需要花费四倍的时间,在CI或非框架应用程序中).

介于两者之间吗?

(ASP.NET MVC可能是'它',但我不懂语言,所以学习它的努力将比学习Yii php框架更好,所以我正在寻找一个PHP框架)

php codeigniter yii

11
推荐指数
1
解决办法
2650
查看次数

如何为城堡或建筑物生成随机2D地图?

我正在创建一个游戏,需要创建一个城堡或类似建筑的随机2d地图.它应该看起来像蓝图,即从上面拍摄,只使用线条.

我正在寻找一些能做到这一点的算法.我对代码不是那么感兴趣,而是算法本身.从哪里开始以及如何填充所需区域?

algorithm map

11
推荐指数
1
解决办法
2万
查看次数

'^'在c#(Enums)中做了什么?

我正在阅读一些第三方代码,我发现了这个:

x.Flags = x.Flags ^ Flags.Hidden;
Run Code Online (Sandbox Code Playgroud)

它有什么作用?

我用'&'和'|' 用于按位'和'和'或'用枚举,但这是我第一次看到那个符号......

c# enums operators

9
推荐指数
2
解决办法
5902
查看次数

如何在今天的MM/DD/YYYY格式日期以PHP创建变量?

如何在今天的MM/DD/YYYY格式日期以PHP创建变量?

当有人进入网站时,我需要将该日期输入为隐藏的表单字段.所以我需要抓住今天的日期并将其转换为该格式.谢谢.

php

9
推荐指数
4
解决办法
6万
查看次数

用于Web应用程序开发的Lisp或Haskell

我正在考虑学习函数式编程语言.我决定构建一个中型Web应用程序.

我缩小了对Haskell和Common Lisp的选择范围.

Web应用程序需要与某些关系数据库(MySQL,Firebird或Postgres)连接,并且必须在Linux上运行.显然,它必须与Web服务器软件很好地连接.我没有使用函数式语言的经验,我的专业是C,C++,PHP和JavaScript.

哪一种更适合这种用途,为什么?

我不确定这个问题是否应该标记为主观?它真的不是"哪种语言更好",而是"哪种语言更适合这项特殊任务"

haskell web-applications common-lisp

9
推荐指数
4
解决办法
1951
查看次数

如何快速搜索书名?

我有一个约20万册书籍的数据库.我希望为用户提供一种通过标题快速搜索图书的方法.现在,有些标题可能有A,THE等前缀,并且标题中也可以有数字,因此搜索12应该匹配标题中带有"12","12"和"打"的书籍.这将通过AJAX工作,所以我需要确保数据库查询真的很快.

我假设大多数用户都会尝试使用标题中的某些单词进行搜索,因此我想将所有标题拆分为单词并创建一个单独的数据库表来将单词映射到标题.但是,我担心这可能不会给出最好的结果.例如,书名可能是一些2或3个常用词,我可能会得到一个包含更长标题的书籍列表,其中包含所有2-3个单词,而我正在寻找的书籍就像大海捞针一样丢失.此外,由于大量的OR子句,搜索标题中包含许多单词的书可能会减慢查询速度.

基本上,我正在寻找一种方法:

  • 快速找到结果
  • 按相关性排序.

我认为这不是第一次有人需要这样的东西,我不想重新发明轮子.

PS我目前正在使用MySQL,但如果需要,我可以切换到其他任何东西.

algorithm search

9
推荐指数
1
解决办法
955
查看次数

从不均匀分布的集中删除项目

我有一个网站,用户提交问题(每天零,一或多个),投票并每天回答一个问题(更多细节在这里).用户只能通过提交,投票或回答一次来查看问题.

我有一些玩家已经看过的问题.我需要每个月从池中删除30个问题.我需要选择要删除的问题,以便最大限度地提高游泳池中可用问题的数量.

有5个问题的池的例子(需要删除3个):

  • 玩家A遇到过问题1,3和5
  • 玩家B已经看到问题1和4
  • 玩家C见过问题2和4

我虽然要删除顶级玩家所看到的问题,但这个位置会发生变化.按照上面的例子,玩家A只剩下2个问题要玩(2和4).但是,如果我删除1,3和5,情况将是:

  • 玩家A可以玩问题2和4
  • 玩家B可以玩问题2
  • 玩家C不能玩任何东西因为1,3,5被移除而他已经看过2和4.

该解决方案的得分为零,即具有最少可用问题量的玩家具有零可用问题.

在这种情况下,最好删除1,3和4,给出:

  • 玩家A可以玩问题2
  • 玩家B可以玩问题2和5
  • 玩家C可以玩问题5

此解决方案的得分为1,因为有两个可用问题最少的玩家有一个可用问题.

如果数据量很小,我就可以强制解决问题.但是,我有数百个玩家和问题,所以我正在寻找一些算法来解决这个问题.

algorithm combinatorics

9
推荐指数
1
解决办法
500
查看次数