【问题标题】:Variable for marking documents created each day, resetting every 24 hours用于标记每天创建的文档的变量,每 24 小时重置一次
【发布时间】:2014-03-30 15:57:20
【问题描述】:

我正在使用 TCPDF 和 FPDI 根据模板使用 PHP 表单创建 PDF 文档。

我需要一种方法来识别它们。问题是 - 这些文档中的大多数都是手动创建的,因此已经指定了 ID 格式。

基本是Name-DD.MM.YYYY-X.pdf,改不了。

例如,Document-01.01.2014-2,其中 2 表示这是当天发布的第二份文件。

有没有办法自动做到这一点?我正在使用传统的<form> 并将action 设置为PHP TCPDF 脚本,它可以完美运行,但是如何指定如果今天已经生成了某些内容,然后执行$var = $var + 1 然后在午夜重置它?

【问题讨论】:

  • 使用glob() 将文件名读入一个数组,然后计算它们

标签: php variables reset tcpdf


【解决方案1】:

您可以尝试使用函数file_exists(),以测试是否已生成基本名称。

如果是,只需创建一个循环并增加您的 $var 以迭代地测试您的文档。

示例:

$baseName = "Name-DD.MM.YYYY";
$extension = ".pdf";
$i = 0;

while(1)
{
     if($i > 0)
         $testName = $baseName."-".$i.$extension;
     else
         $testName = $baseName.$extension;

     if(!file_exists($testName))
          break;

     $i++;
}

if($i > 0)
     $validName = $baseName."-".$i.$extension;
else
     $validName = $baseName.$extension;

希望我的回答对你有帮助,

毒液

【讨论】:

  • 如果只有文件实际存储在服务器上,那将有效(非常感谢!)。事情是 - 他们不是,虽然我可以修补它。一定会考虑的!
  • 嗯。您至少拥有文档生成的脚本吗?如果是这样,您可以使用数据库(每次生成文档时更新一个字段,然后检查该字段的值)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多