小编zne*_*eak的帖子

创建一段时间后删除会话文件

我将会话保存在/ temp目录的另一个目录中.说/session目录.(使用session_save_path("session"))

此外,还有一个代码可以在创建和注销10分钟后终止会话.

但我提到如果用户登录并例如关闭他的计算机,我的注销和会话销毁代码剂量不会运行,因此会话文件将保留在会话目录中.

我想知道有没有办法在/session创建一段时间后删除会话文件?

我用这个代码

  if ($handle = opendir('sessions')) {

    while (false !== ($file = readdir($handle))) {
        if (filectime($file)< (time()-600)) {  // 600 = 10*60
        unlink($file);
        }
    }
  }
Run Code Online (Sandbox Code Playgroud)

但是,不工作,我认为它无法获得创造时间 filectime($file)

谢谢

php session automation

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

如何让WebKit或IE从浏览器中打开的HTML页面调用您的应用程序(.NET)?

我在Windows上运行.NET应用程序.我想点击一些页面元素(按钮链接flash应用程序等)来启动我的应用程序与一些特殊参数.(它不仅应该在IE中运行,而且还应该在基于WebKit的Windows浏览器上运行)在App安装期间,我们假设用户是Admin并且正在运行Vista或Windows 7或更高版本.

所以我的问题是 - 在哪里可以获得这种互动的例子(当然是来源)?

那么如何让基于WebKit的Browser或IE调用您的.Net应用程序呢?

.net internet-explorer webkit

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

为什么我的专用模板函数仅在调试版本中调用?

我在我的C++ 11 Xcode项目中有模板化的函数,其中一些有专门化.但是,我发现只在调试版本中调用了特化; 如果我在发布中构建,则会被忽略.

我已经成功创建了一个非常简单的例子:

special.h

#include <cstdio>

struct special
{
    template<typename T>
    void call(const T&) { puts("not so special"); }
};
Run Code Online (Sandbox Code Playgroud)

special.cpp

#include "special.h"
#include <string>

template<>
void special::call(const std::string&) { puts("very special"); }
Run Code Online (Sandbox Code Playgroud)

main.cpp中

#include "special.h"
#include <string>

int main()
{
    std::string str = "hello world";
    special s;
    s.call(123);
    s.call(str);
}
Run Code Online (Sandbox Code Playgroud)

您可以下载该项目(至少在2013年夏天的某个地方),如果您不想自己创建该项目,则可以重现该问题.首先使用调试配置运行项目,然后在发布中再次运行它.我期望的输出是:

没那么特别
非常特别

这确实是我用Debug构建配置得到的.但是,有了Release,我得到了这个:

没那么特别
不那么特别

这意味着special::call在special.cpp中的专门实现被忽略了.

为什么结果不一致?我该怎么做才能确保在发布版本中调用专用函数?

c++ xcode

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

不能在Ubuntu 18.04上使用Swift

在从swift.org上认真遵循Linux上的安装说明之后,我遇到了一个无法在Ubuntu 18.04机器上编译任何东西的问题.REPL似乎有效,但在编译期间(调用时swift build)会出现以下错误:

/usr/bin/ld: cannot find -lstdc++
Run Code Online (Sandbox Code Playgroud)

完整的错误报告[SR-9093]中有更多详细信息.我根本不知道如何解决这个问题,其他bug报告中已经提到了类似的问题,例如在这个非常古老的报告[SR-35]上.

我该怎么办?

谢谢

linux ubuntu swift ubuntu-18.04

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

i386汇编问题:为什么我需要插入堆栈指针?

我决定在暑假期间学习x86组装会很有趣.所以我从一个非常简单的hello world程序开始,借用免费的例子gcc -S可以给我.我最终得到了这个:

HELLO:
    .ascii "Hello, world!\12\0"
    .text

.globl _main
_main:
    pushl   %ebp        # 1. puts the base stack address on the stack
    movl    %esp, %ebp  # 2. puts the base stack address in the stack address register
    subl    $20, %esp   # 3. ???
    pushl   $HELLO      # 4. push HELLO's address on the stack
    call    _puts       # 5. call puts
    xorl    %eax, %eax  # 6. zero %eax, probably not necessary since we didn't do anything with …
Run Code Online (Sandbox Code Playgroud)

x86 assembly gnu-assembler

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

为什么摆脱挥发性是危险的?

在C++中,volatile处理方式相同const:将指向volatile数据的指针传递给不希望volatile修饰符触发编译错误的函数.

int foo(int* bar) { /* snip */ }

int main()
{
    volatile int* baz;
    foo(baz); // error: invalid conversion from ‘volatile int*’ to ‘int*’
}
Run Code Online (Sandbox Code Playgroud)

为什么危险?对于const修饰符来说,删除它可能会破坏const正确性; 但是有" volatile正确性"之类的东西吗?我无法弄清楚如何将指向易失性数据的指针作为非易失性数据的指针传递可能会导致问题.

编辑只是让你们知道我为什么volatile在第一时间使用:许多Mac OS X的OSAtomic函数系列(用于原子增量,减量,加法,减法,比较和交换等)都需要volatile参数.

c++ volatile

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

有没有办法在Mac OS下将数据发送到另一个进程的标准输入?

我想知道是否有一个API,无论它多么模糊,这将允许有人stdin在Mac OS X下将数据发送到另一个进程的流.在Linux下,如果我没记错,你可以使用文件系统/proc来访问这些流(当然,具有正确的权限).

我不知道.Mach端口,有人吗?

macos stdin

6
推荐指数
3
解决办法
3077
查看次数

文字游戏需要英语词典

我正在寻找一种方法在iPhone应用程序(文字游戏)中包含一个完整的英语词典,数据库必须能够包括动词的所有共轭可能性,必须包括单数和复数拼写.所以我的应用程序可以查询数据库以检查拼写是否正确.

是否有包含这些数据的免费或商业数据库?

dictionary spelling

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

使用文件输入进行onchange的解决方法是什么?

正如你们中的一些人可能已经知道的那样,Internet Explorer的onchange事件在版本9之前基本上被破坏了.而不是在发生更改时触发,它会在输入字段失去焦点并发生更改时触发.

这导致复选框和单选按钮("使用" onclick代替")和文本字段(" keyup替代使用")的各种变通方法.

但是,对于文件输入我遇到了这个问题,我无法弄清楚我做了什么来通知已经选择了一个新文件,而不是当用户点击其他地方时.我无法将自己附加到鼠标事件中,因为它与鼠标无关; 我无法将自己附加到键盘事件上,因为它与键盘无关.

如果可以解决问题,我愿意使用特定于IE的东西.


其他信息:

我使用jQuery 1.6和live附加事件的方法.

$(".upload").live("change", function() { /* stuff here */ });
Run Code Online (Sandbox Code Playgroud)

javascript onchange internet-explorer-8

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

如何从-Wha​​tIf处理中排除块?

我正在编写一个Powershell cmdlet,它需要执行命令并将其stderr输出存储到临时文件中以供以后处理.此输出列出了cmdlet稍后可能使用的COM端口.

# mostly side-effect-free information gathering
$info = [IO.Path]::GetTempFileName()
info-gather.exe 2>$info
Get-Content $info | ForEach-Object {
    # processing
}
Remove-Item $info

# serious things with serious side effects start here
Run Code Online (Sandbox Code Playgroud)

我希望这个cmdlet能够实现,-WhatIf因为它会产生非平凡的副作用.但是,该-WhatIf行为将接管info-gather.exe命令,并且它永远不会被执行.相反,它打印:

如果:在目标"temp\path\to\tmp78A4.tmp"上执行"输出到文件"操作

因为永远不会执行此命令,所以内部处理也不会发生,并且我的cmdlet的其余部分都没有执行,因为它不知道要使用哪些端口,这-WhatIf在很大程度上是无用的.

如何绕过-WhatIf此块而不覆盖cmdlet的其余部分?

powershell

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