如何在CRON中增加PHP变量

如何在CRON中增加PHP变量,php,cron,Php,Cron,我有一个simpleXML文件,它是从RESTAPI调用生成的,并将通过cronjob按计划输入数据库 API调用返回的结果限制为每页10个,我遇到的问题是更新调用的page number参数以获得下一组结果 $page_number = 1; $page = $page_number++; $api_url = "example.com/rest/api?products=new&pageid=$page"; 我不知道如何让变量$page在每个cron上递增,非常感谢您的任何帮助将

我有一个simpleXML文件,它是从RESTAPI调用生成的,并将通过cronjob按计划输入数据库

API调用返回的结果限制为每页10个,我遇到的问题是更新调用的page number参数以获得下一组结果

$page_number = 1;
$page = $page_number++;

$api_url = "example.com/rest/api?products=new&pageid=$page";

我不知道如何让变量$page在每个cron上递增,非常感谢您的任何帮助

将数字保存在数据库中或将数字作为内容保存为文件将是最安全的方法

$fname = '/tmp/pager_counter'; // don't use tempnam function here!!!
$fp = fopen($fname, 'w+');
$page = (int)fread($fp, filesize($fname));
if (!$page) {
    $pgae=0;
}
$page++;
fwrite($fp, $page, strlen((string)$page));

$api_url = "example.com/rest/api?products=new&pageid=$page";

您可以轻松地使用任何其他数据库或缓存(
MySQL
memcache
,等等)

在/tmp/file.txt中创建新的空文件

$page_number = file_get_contents("/tmp/file.txt");
if (!$page_number) $page_number = 1;
$page = $page_number + 1;
$f = fopen("/tmp/file.txt", "w+");
fwrite($f, $page);
fclose($f);

$api_url = "example.com/rest/api?products=new&pageid=$page";
您可以存储在:

  • File=>请参阅其他答案。为此,您需要访问文件系统(但我认为您应该拥有该文件系统或继续)
  • (或)=>提供免费的Redis实例和predis非常流行的PHP库来连接Redis。此解决方案将(几乎)始终有效且速度非常快。为此,您只需
    socket
  • SQL=>如果你的主机提供商提供了这个,你应该用它来连接SQL。我也认为它应该提供这个,或者你应该继续前进