小编use*_*841的帖子

在MySql中发现n天内是否会出现周年纪念日

我有一张周年纪念日的桌子.我想要一个查询,它会在接下来的10天内返回一系列纪念日.例如:

birthdate
---------
1965-10-10
1982-05-25


SELECT birthdate FROM Anniversaries WHERE mystical_magical_mumbo_jumbo <= 10

+------------+
| birthdate  |
+------------+
| 1982-05-25 |
+------------+
1 row in set (0.01 sec)
Run Code Online (Sandbox Code Playgroud)

我想在表单中保留查询x <= 10,因为我将在查询的其他部分使用该数字10,如果我将其设置为变量,我可以通过更改变量在任何地方更改它,而不是重写查询.

mysql datetime

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

检查匹配地址的算法?

我正在制定一项调查计划,让人们在第一次填写调查时会获得促销考虑.在很多情况下,我们阻止人们欺骗系统并获得他们不应该得到的促销的唯一方法是检查彼此之间的街道地址字符串.

我正在考虑使用levenshtein距离给我一个数字来衡量相似性,并认为低于某个阈值的数字是重复的.

然而,如果有人想要对系统进行游戏,他们可以轻松地编写"S 5th St"而不是"South Fifth Street",levenshtein会认为这些字符串非常不同.那么我想把所有字符串转换为'标准地址形式',即'South'变成's','Fifth'变成'5th'等等.

然后我认为这是无望的,并且需要付出太多努力才能使其稳健运行.是吗?

我正在使用PHP/MySql,所以我有该系统固有的局限性.

algorithm user-data street-address

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

不能从类中调用静态方法作为变量名吗?

我正在使用php 5.2.6.我有一个策略模式,策略有一个静态方法.在实际实现其中一个策略的类中,它获取要实例化的策略类的名称.但是,我想在实例化之前调用其中一个静态方法,如下所示:

$strNameOfStrategyClass::staticMethod();
Run Code Online (Sandbox Code Playgroud)

但它给了T_PAAMAYIM_NEKUDOTAYIM.

$> cat test.php

<?

interface strategyInterface {
        public function execute();
        public function getLog();
        public static function getFormatString();
}


class strategyA implements strategyInterface {
        public function execute() {}
        public function getLog() {}
        public static function getFormatString() {}
}

class strategyB implements strategyInterface {
        public function execute() {}
        public function getLog() {}
        public static function getFormatString() {}
}

class implementation {
        public function __construct( strategyInterface $strategy ) {
                $strFormat = $strategy::getFormatString();
        }
}

$objImplementation = & …
Run Code Online (Sandbox Code Playgroud)

php strategy-pattern php-5.2

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

数组AND()?所有元素的逻辑AND

我有一个数组,我想知道它中是否至少有一个假值.我正在考虑创建一个array_and()函数,它只对所有元素执行逻辑AND.如果所有值都为真,则返回true,否则返回false.我是否过度工程?

php arrays boolean-logic

7
推荐指数
2
解决办法
2209
查看次数

系统化PHP中的Web应用程序的错误代码?

我正在研究基于类的php web应用程序.我有一些对象正在交互的地方,并且我在某些情况下使用错误代码与最终用户进行通信 - 通常在表单值丢失或无效时.这些情况下,例外情况是没有根据的(我不确定我是否可以避免出现异常的情况).

在一个对象中,我有大约20个代码编号,每个代码编号对应于面向用户的消息,以及面向管理员/开发人员的消息,因此双方都知道发生了什么.现在我已经多次处理了代码,我发现很难快速找出我已经使用过的系列中的代码编号,所以我不小心创建了相互矛盾的代码.例如,我今天只用12,13,14和15做了.

我怎样才能更好地组织这个,所以我不会创建冲突的错误代码?我应该创建一个单独的类,errorCodes,它有一个包含所有类的所有错误代码的主列表,在整个Web应用程序中将它们系统化?或者,在适当的时候,每个对象应该有自己的一组错误代码,我只是在对象的注释中保留一个列表,在我进行时使用和更新它?


编辑:所以我喜欢在类中使用常量或命名常量的建议.这给了我一个地方,我以编程方式定义并跟踪错误代码及其消息.

下一个问题:我为这类错误代码和消息提供了什么样的接口?我是否triggerError(20)在类中执行某些操作,然后提供一个公共方法来返回错误代码,字符串常量以及面向用户和管理员的消息?

php oop error-handling

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

递归查询邻接列表以预先排序SQL中的树遍历?

我正在将数据从一个数据库架构迁移到另一个.旧模式具有基于邻接列表的分类系统,具有id,category和parent_id.如果一个类别低于一秒,则该类别将第二个id作为其父ID.例如:

+-------------+----------------------+--------+
| category_id | name                 | parent |
+-------------+----------------------+--------+
|           1 | ELECTRONICS          |   NULL |
|           2 | TELEVISIONS          |      1 |
|           3 | TUBE                 |      2 |
|           4 | LCD                  |      2 |
|           5 | PLASMA               |      2 |
|           6 | PORTABLE ELECTRONICS |      1 |
|           7 | MP3 PLAYERS          |      6 |
|           8 | FLASH                |      7 |
|           9 | CD PLAYERS           |      6 |
|          10 | 2 …
Run Code Online (Sandbox Code Playgroud)

algorithm rdbms rdbms-agnostic nested-sets data-structures

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

Git从另一个分支复制文件而不暂存

发现了如何将文件从一个分支批量复制到另一个分支:

编辑请注意,如果您认为这个问题与this重复,请注意这是我在上面链接的问题^^,下面解释了我想要的不同功能。

$ git checkout directory/somefile.php feature-B
Run Code Online (Sandbox Code Playgroud)

但是,此解决方案已经对更改进行了分阶段:

$ git status
On branch feature-A
Your branch is up-to-date with 'origin/feature-A'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        modified:   directory/somefile.php
Run Code Online (Sandbox Code Playgroud)

但我不想添加所有更改。我想做一个add -p并采取大部分但不是全部的变化。我想要的是这个:

$ git status
On branch feature-A
Your branch is up-to-date with 'origin/feature-A'.
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory) …
Run Code Online (Sandbox Code Playgroud)

git

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

如何计算最终一致性需要多长时间才能达到一致?

我开始研究 nosql 和面向文档的数据库来存储我们将在网站上提供的 HTML5 应用程序的资源。这旨在替代仅在文件系统上存储文件的情况。它们将是针对 Web 优化的小型文件,包括 html、js、css 和 xml 等文本文件,以及图像、声音和字体等二进制文件。

由于我对容错感兴趣,我正在寻找的解决方案(riak、Cassandra)使用最终一致性。虽然我在抽象层面上理解这个概念,但当我与管理者和决策者交谈时,我无法用实际的术语解释最终一致性需要多长时间才能变得一致。毫秒?秒?分钟?由于我在这个领域没有任何经验,因此我正在寻找现实世界的经验来了解这意味着什么。

我知道不同的变量将准确决定任何配置需要多长时间,但我需要能够开始了解我们需要构建哪些类型的基础设施来支持我们的需求。所以我正在寻找的是我们是否需要优化网络延迟、节点数量等来支持我们的特定需求。

我们希望能够选择要测试的平台,在我们投入时间研究任何特定解决方案之前,我们希望能够说“不,这对我们不起作用。”

我们现在拥有使用严格一致性的系统(例如我们的网络服务器和 mysql 数据库上的文件系统),因此我们的管理习惯于负载和超时等概念,以及“宕机”的情况。但我无法与他们沟通“是的,数据现在不可用,但它并没有关闭;最终会可用”。他们想知道“好吧,‘最终’是多长时间”?

我如何判断最终一致的系统是否适用于我们的网站?

eventual-consistency nosql

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

PSR-4目录结构和命名空间的一组功能?

我有一组有用的PHP函数.我想创建一个PSR-4储存库他们,但我发现导游(1,2,3)似乎只讲类自动加载.

例如,我的文件如下,每个文件有一个函数:

my_cool_function1.php
my_cool_function2.php
... etc.
Run Code Online (Sandbox Code Playgroud)

如何从中创建符合PSR-4的库?

php psr-4

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

PHP接口接受接口参数?

我想在PHP中创建一个接口,但我不希望它对其在一个公共方法中接受的参数类型过于严格.我不想这样做

interface myInterface {
    public function a( myClass $a);
}
Run Code Online (Sandbox Code Playgroud)

因为我可能不想传递它的实例myClass.但是,我确实希望确保传递的对象符合某些参数,我可以通过定义一个接口来完成.所以我想指定使用接口的类,如下所示:

<?php

interface iA {}
interface iB {}

interface iC {
    public function takes_a( iA $a );
    public function takes_b( iB $b );
}

class apple implements iA {}
class bananna implements iB {}

class obj implements iC {
    public function takes_a( apple $a ) {}
    public function takes_b( bananna $b ) {}
}
Run Code Online (Sandbox Code Playgroud)

但是,我得到了错误 PHP Fatal error: Declaration of obj::takes_a() must be compatible with iC::takes_a(iA $a) on …

php oop

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