小编kry*_*ryo的帖子

如何在Intellij IDEA中将类重新包含到构建路径中?

我不小心从编译器错误窗格中排除了构建路径中的一个类,我无法弄清楚如何将其取回.

该类在任何其他类中都不可见,并且在我单击该命运菜单选项之前它是正确的.

该类在图标上有一个"x",而我的其他类都没有.

编辑: 自己想出来.转到设置>项目设置>编译器>排除并删除条目

build path intellij-idea

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

64位浮点文字PHP

我试图在PHP中将64位浮点数转换为64位整数(并返回).我需要保留字节,所以我正在使用pack和unpack函数.我正在寻找的功能基本上是Java的Double.doubleToLongBits()方法.http://docs.oracle.com/javase/7/docs/api/java/lang/Double.html#doubleToLongBits(double)

我设法得到这个远远的帮助来自php docs for pack()的评论:

function encode($int) {
        $int = round($int);

        $left = 0xffffffff00000000;
        $right = 0x00000000ffffffff;

        $l = ($int & $left) >>32;
        $r = $int & $right;

        return unpack('d', pack('NN', $l, $r))[1];
}
function decode($float) {
        $set = unpack('N2', pack('d', $float));
        return $set[1] << 32 | $set[2];
}
Run Code Online (Sandbox Code Playgroud)

这很好用,大部分......

echo decode(encode(10000000000000));
Run Code Online (Sandbox Code Playgroud)

亿

echo encode(10000000000000);
Run Code Online (Sandbox Code Playgroud)

1.1710299640683E-305

但是这里变得棘手......

echo decode(1.1710299640683E-305);
Run Code Online (Sandbox Code Playgroud)

-6629571225977708544

我不知道这里有什么问题.亲自试试:http://pastebin.com/zWKC97Z7

你需要在Linux上使用64位PHP.该网站似乎模拟了该设置:http://www.compileonline.com/execute_php_online.php

php literals double-precision pack long-integer

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

MySQL JOIN,GROUP BY,ORDER BY

我有一张产品表:

CREATE TABLE products (`id` INT);
Run Code Online (Sandbox Code Playgroud)

以及这些产品的图像表:

CREATE TABLE images (`id` INT, `product_id` INT, `default` TINYINT(1));
Run Code Online (Sandbox Code Playgroud)

我需要选择所有产品,然后加入图像表,以便default首选(= 1)图像,如果产品没有(default= 1)图像,default则会在其中显示带(= 0)的图像地点.


这是一张显示我正在寻找的图片:

在此输入图像描述


现在我有这个查询:

SELECT p.id, i.id
FROM products AS p
LEFT JOIN (
    SELECT product_id, url
    FROM images
    ORDER BY default
) AS i
ON p.id = i.product_id
GROUP BY p.id
ORDER BY p.name
Run Code Online (Sandbox Code Playgroud)

哪个没有优先考虑"默认"图像.子查询似乎没有做任何事情.

mysql sql-order-by

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

如何从Redis中的脚本调用脚本?

我希望一个接一个地运行许多Lua脚本,而不允许任何命令在其间运行.我还需要将第一个脚本的结果传递给第二个脚本,等等.

我把所有脚本放在一个文件中,暂时解决了这个问题.但是,第二个脚本会修改第一个脚本返回的键.因此,将所有内容放在一个文件中会违反EVAL命令语义,因为第二个脚本使用的所有键都应使用KEYS数组传递.

lua eval atomicity redis

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