小编Ben*_*rey的帖子

SQL查询中的日期范围的DATEDIFF()或BETWEEN

我最近被告知BETWEEN在SQL中使用该方法有点不可靠,因此我应该使用它DATEDIFF().但是,另一位程序员告诉我情况并非如此,BETWEEN只要日期格式正确,该方法在所有情况下都能很好地运行.

请有人通过陈述哪种方法更好以及为什么解决这个问题?

目前我的日期范围SQL如下所示:

DATEDIFF(d,'01-Jan-1970',SIH.[Something_Date]) >= 0 AND DATEDIFF(d,'01-Jan-2013',SIH.[Something_Date]) <= 0
Run Code Online (Sandbox Code Playgroud)

但是,如果我能确定它是可靠的,我宁愿这样写它:

SIH.[Something_Date] BETWEEN '01-Jan-1970' AND '01-Jan-2013'
Run Code Online (Sandbox Code Playgroud)

在这种特殊情况下,我使用的是MsSQL,但是,我已经标记了MySQL,因为我想知道这是否也适用于此

mysql sql sql-server datediff

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

如果元素具有特定类,则禁用jQuery UI draggable

我有一个交互式篮子,用户可以将物品拖放到篮子里.但是,相同的物品不能放在篮子里两次(但它仍然可见,虽然已经褪色),所以一旦它在篮子里,draggable必须禁用该属性.

我试过这样做:

$("#product_badges li:not(.on)").draggable({
    // Options here
});
Run Code Online (Sandbox Code Playgroud)

但是,因为这只是启动draggable()属性,即使我确实将该on类添加到该属性,该元素仍然可以拖动dropped.

因此,我没有看到一种实现这一目标的方法,如果没有draggable像这样的属性的几个实例:

$("#product_badges li:not(.on)").each(function(){
    $(this).draggable({
        // Options here
    }
});
Run Code Online (Sandbox Code Playgroud)

通过上面的方法,我可以调用个人product_badge并禁用拖动,如下所示:

只有将物品放入篮子后才会调用此选项(掉线)

$('.item',$('#product_badges')).draggable('disable');
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来实现这一目标?您是否可以将HTML元素设置为只有在没有特定类的情况下才可以拖动?

更新

请参见此处的示例:http://jsfiddle.net/mB6GK/2/

html javascript jquery jquery-ui draggable

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

通过关联键将数组元素移动到数组的开头

到目前为止,我所有的研究表明,如果没有像这里的解决方案那样编写冗长的功能,就无法实现这一目标

当然有一种更简单的方法可以使用预定义的PHP函数实现这一目标吗?

为了清楚起见,我正在努力做到以下几点:

$test = array(
    'bla' => 123,
    'bla2' => 1234,
    'bla3' => 12345
);

// Call some cool function here and return the array where the 
// the element with key 'bla2' has been shifted to the beginning like so
print_r($test);
// Prints bla2=1234, bla=>123 etc...
Run Code Online (Sandbox Code Playgroud)

我已经看过使用以下功能,但到目前为止还没有能够自己编写解决方案.

  1. array_unshift
  2. array_merge

总结一下

我想要:

  1. 将元素移动到数组的开头
  2. ...同时保持关联数组键

php arrays

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

从array_map匿名函数内部调用类方法

我试图从array_map匿名函数中调用我的对象的一个​​方法.到目前为止,我收到了预期的错误:

致命错误:在不在对象上下文中时使用$ this ...

我知道为什么我会收到这个错误,我只是不知道如何实现我想要的...有人有任何建议吗?

这是我目前的代码:

// Loop through the data and ensure the numbers are formatted correctly
array_map(function($value){
    return $this->some_method($value,'value',false);
},$this->mssql->data[0]['results'][0]);
Run Code Online (Sandbox Code Playgroud)

php scope class object array-map

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

来自多个表的UNION或JOIN for SELECT

我的问题

我试图根据参数从多个表中选择一行,但我对SQL加入的有限知识阻碍了我.有人可能会指出我正确的方向吗?

考虑这些表结构:

+-----------------------+     +---------------------+
| Customers             |     | Sellers             |
+-------------+---------+     +-----------+---------+
| Customer_ID | Warning |     | Seller_ID | Warning |
+-------------+---------+     +-----------+---------+
| 00001       | Test 1  |     | 00008     | Testing |
| 00002       | Test 2  |     | 00010     | Testing |
+-------------+---------+     +-----------+---------+
Run Code Online (Sandbox Code Playgroud)

我想要做的是SELECT只检索一行,并且在此行中将是基于X_ID字段的每个表的"警告"字段.

期望的结果

所以,如果我提交了以下信息,我会收到以下结果:

例1:

Customer_ID = 00001
Seller_ID = 00008

Results:
+-----------------------------------+
| Customer_Warning | Seller_Warning |
+------------------+----------------+
| Test 1           | Testing        |
+------------------+----------------+
Run Code Online (Sandbox Code Playgroud)

例2:

Customer_ID = 00001 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server union join

4
推荐指数
2
解决办法
194
查看次数

Dreamweaver Minify插件

是否有人知道可以与Dreamweaver或任何其他编码实用程序一起使用的插件,可以在上传文件时缩小javascript/css?

因此,例如,我创建一个名为的文件functions-global.js,然后,当我上传文件时,它按原样上传此文件并创建一个缩小的副本,称为类似functions-global.minified.js

我无法想象这将是一个非常难以编写的插件,只要你有这里用于js的缩小算法 - 压缩Javascript,这个用于CSS - 压缩CSS

我纯粹是出于熟悉的目的使用Dreamweaver,如果还有其他任何软件,那么请告诉我.

提前致谢

javascript jquery plugins dreamweaver minify

3
推荐指数
1
解决办法
6990
查看次数

XFBML是否已被弃用?

根据Facebook的说法,FBML已被弃用,将于2012年7月5日删除,如此处所述.

这不是这个问题的重复,因为我指的是XFBML而不是FBML.

我的问题很简单,因为FBML被弃用,这是否意味着XFBML也被弃用了?

我问这个是因为我使用插件,例如评论社交插件,这使用了XFBML和iframe的混合.我是否应该更改所有这些插件以使用iframe或HTML5?或者XFBML与FBML无关?

提前致谢

html deprecated fbml xfbml facebook-social-plugins

3
推荐指数
1
解决办法
4234
查看次数

用CSS创建语音泡泡

我试图在不使用图像的情况下创建一个语音泡泡,但与典型的带有矩形和三角形的语音泡泡不同,我的情况稍微复杂一些.请参见下图:

会话框

我看过这个网站,似乎这可能是一些很酷的CSS技巧,但我真的不知道从哪里开始.谁能指出我正确的方向?

这是我到目前为止:

.speech {
  position: relative;
  width: 50px;
  height: 50px;
  background: #000;
  border-radius: 50px;
}

.speech:after {
  content: "";
  display: block;
  position: absolute;
}
Run Code Online (Sandbox Code Playgroud)
<div class="speech"></div>
Run Code Online (Sandbox Code Playgroud)

创建初始圆很容易,一旦你掌握了它们,三角形就不会太难了,我的问题是我需要以某种方式弯曲三角形以匹配图形......

这不是重复的,因为最终结果必须在所有方面都是透明的,因此可以放在DOM中的任何其他内容之上,并且您将无法看到三角形被切割的位置......

html css css3 css-shapes

3
推荐指数
1
解决办法
925
查看次数

将所有数组递归转换为多维Javascript对象中的对象

考虑以下对象:

const data = {
    foo: 'bar',
    items: [
        {
            id: 1,
            items: [
                {
                    id: 50,
                    content: 'test'
                }
            ]
        },
        {
            id: 2,
            items: [
                {
                    id: 70,
                    content: 'test'
                },
                {
                    id: 85,
                    content: 'test'
                }
            ]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我目前正在使用Vuex-i18n插件,该插件仅支持数组中的字符串值,因此我需要遍历数据并将所有数组转换为对象。

我希望我能够以JSON.parse某种方式利用它,但我一直无法使它发挥作用。

这是我尝试的:

const json = '{"foo":"bar","items":[{"id":1,"items":[{"id":50,"content":"test"}]},{"id":2,"items":[{"id":70,"content":"test"},{"id":85,"content":"test"}]}]}';

console.log(JSON.parse(json, (key, value) =>
  typeof value === 'array'
    ? Object.assign({}, value)
    : value
));
Run Code Online (Sandbox Code Playgroud)

谁能建议实现这一目标的方法?我希望我可以避免递归地迭代该对象,但是我不确定是否可行...

更新资料

预期的输出应如下所示:

const data = {
    foo: 'bar',
    items: {
        0: …
Run Code Online (Sandbox Code Playgroud)

javascript arrays json

3
推荐指数
1
解决办法
43
查看次数

计算数组对象中的数组项(组合计数)

考虑以下对象:

const test = {
    foo: ['foo', 'bar', 'foobar'],
    bar: ['foo', 'bar', 'foobar']
    foobar: ['foo', 'bar', 'foobar']
};
Run Code Online (Sandbox Code Playgroud)

如何获得上述对象中每个数组中所有项目的组合计数?

我知道我可以按照以下方式做一些事情:

let count = 0;

Object.values(test).forEach(value => count += value.length);

console.log(count) // Expected result: 9
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种更简单(更干净,希望是单行)的方式来实现这一目标......

javascript ecmascript-2017

3
推荐指数
1
解决办法
52
查看次数