小编ts.*_*ts.的帖子

在平衡重量的块中拆分列表

我需要一个算法将一个值列表拆分成这样的块,每个块中的值总和是(近似)等于(它假设背包问题的一些变化)

所以,例如[1,2,1,4,10,3,8] => [[8,2],[10],[1,3,1,4]]

相同长度的块是首选,但它不是约束.

Python是首选语言,但也欢迎其他语言

编辑:定义了块数

python language-agnostic algorithm optimization combinatorics

8
推荐指数
1
解决办法
3094
查看次数

在phing中获得生成的exec的pid

我正在使用phing并通过ExecTask运行selenium服务器.有时我需要通过终止其进程来停止运行服务器.

是否有可能在ExecTask中产生进程的PID?

php linux phing command-line

7
推荐指数
1
解决办法
891
查看次数

已注册的关闭功能列表

有没有方法可以访问已注册的关闭功能列表?

php

6
推荐指数
1
解决办法
2004
查看次数

如何使用PHPUnit测试mail()

如果正确发送邮件,有没有办法用PHPUnit(或者可能是PHP的其他测试框架)进行测试?我必须测试使用PHP函数mail()的代码.使用自定义邮件程序类我可以随时进行模拟,但对于mail()...?也许有一些插件能够使用IMAP并验证是否收到邮件?(如果有可能,它应该与操作系统无关......)

php email testing phpunit unit-testing

6
推荐指数
2
解决办法
3618
查看次数

如何检查Selenium Server是否正在运行

我有一堆phpunit测试,其中一部分使用selenium,我需要知道有没有运行selenium服务器(windows).有没有办法从PHP检查它?

php windows selenium phpunit

6
推荐指数
1
解决办法
4247
查看次数

在mysql中可以使用重音敏感和不区分大小写的utf8排序规则吗?

如何在mysql中执行重音敏感但不区分大小写的utf8搜索?Utf8_bin区分大小写,并且utf8_general_ci对重音不敏感.

mysql collation utf-8 character-encoding

6
推荐指数
1
解决办法
2752
查看次数

NAMESPACE_SEPARATOR常数

在PHP中使用名称空间非常棒.将'\'作为命名空间分隔符有点......尴尬(但如果有人认为这很酷且很性感,我会在这篇帖子中添加标签"rant".).

所以,这里提出的问题是:

您是否在代码中使用NAMESPACE_SEPARATOR常量?如下面的代码:

<?php

if (!\defined('NAMESPACE_SEPARATOR') {

    \define('NAMESPACE_SEPARATOR', '\\');

} // if
Run Code Online (Sandbox Code Playgroud)

优点:

  • 与DIRECTORY_SEPARATOR一致(其中所有我们的使用;)
  • 没有逃脱的混乱(想想'\ Foo\Bar'但是'\\'.Foo'.'\\'.'Bar')
  • 更具可读性(恕我直言)
  • 这使我们有机会编写好的,名称空间感知的自动加载器
  • 如果发生可怕的事情,可以抵制另一个变化(就像使用来自PHP 6 alpha的ol'good'::')
  • 在陌生人的编程语言中可以隐藏'\'作为命名空间操作符;)

缺点:

所以,你在想什么?

php coding-style namespaces

5
推荐指数
2
解决办法
6002
查看次数

有没有办法访问给定对象的所有引用?

任何人都有想法是否可以销毁/更改在许多地方引用的php对象?unset显然只会破坏一个引用,有时手动跟踪所有引用都不是一个选项.有任何想法吗?也许反思中有一些我缺少的东西?

php oop reflection variables reference

5
推荐指数
2
解决办法
718
查看次数

sql - 添加时间间隔,跳过某段时间

我有一个mySql查询,它会在datetime字段中添加一定的时间间隔.

UPDATE table T 
   SET T.ending = DATE_ADD(T.ending, INTERVAL T.hours * 3600 * some_other_variable_factors SECONDS)) 
Run Code Online (Sandbox Code Playgroud)

现在,我需要检测新的结束时间是否在几个小时之间(比如20:00到06:00),这应该从计算中排除.

IE浏览器.如果旧的结局是今天,19:58,我们正在增加4分钟,新的结局应该是明天,06:02

额外的困难是添加的时间可能超过24小时.因此,如果旧结尾是今天,19.00,我们正在增加24小时,新结尾应该是后天,15.00(这听起来像一部非常糟糕的电影的标题;)

有没有办法在mysql中实现这一点?在一个查询?我也在考虑存储过程,但我没有任何经验.

一些测试数据:

   CREATE TABLE IF NOT EXISTS `tt` (
      `source` datetime NOT NULL,
      `hours` int(11) NOT NULL,
      `off_start` int(11) NOT NULL,
      `off_long` int(11) NOT NULL,
      `correct` datetime NOT NULL    
    ) ENGINE=InnoDb;


    INSERT INTO `tt` (`source`, `hours`, `off_start`, `off_long`, `correct`) VALUES
    ('2010-11-11 12:00:00', 1, 20, 10, '2010-11-11 13:00:00'),
    ('2010-11-11 19:00:00', 1, 20, 10, '2010-11-12 06:00:00'),
    ('2010-11-11 19:00:00', 2, 20, 10, '2010-11-12 …
Run Code Online (Sandbox Code Playgroud)

mysql sql time datetime stored-procedures

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

python全局对象缓存

关于应用架构的小问题:

我有一个python脚本,作为守护进程运行.

在里面我有很多对象,都是从一个类继承的(让我们把它命名为'entity')

我还有一个主要对象,让它成为'topsys'

实体由pair(id,type(= class,粗略))标识,并且它们以许多邪恶的方式连接.它们也一直在创建和删除,并且需要访问其他实体.

所以,我需要一种存储,基本上是字典词典(每种类型一个),包含所有实体.

问题是,更好的是:将这个字典作为对象属性或类实体附加到'topsys',作为类的属性?我会选择第二个(所以实体不需要知道'topsys'的存在),但我不喜欢直接在类中使用属​​性.或许还有另一种方式?

python design-patterns class-design global-variables

4
推荐指数
1
解决办法
2262
查看次数