需要解决这样一个问题:
每小时从一个API接口读取100次数据,存储到本地mysql里备用。刚刚接触php,不知道怎么办好。
需要一个页面一直打开着么?还是后台启动某个页面?如何知道这个页面是否在运行,随时关掉进程呢?需要租用虚拟服务器,不知道有没有什么高级权限。谢谢!

解决方案 »

  1.   

    如果是linux的话  你可以用crontab定时访问
      

  2.   

    用webservice   soap   , xmlrpc
      

  3.   

    PHP有CLI接口(CommandLineInterface)...如果你编译的时候没有--disable-cli, 那应该就是开启的.在php.ini中有配置指令: register_argc_argv, 设置为on好了. 现在php就可以用来开发普通的命令行程序了...
    脚本如下:
    #!/usr/local/bin/php
    <?php
    var_dump($argc);
    var_dump($argv);
    ?>
    给脚本增加执行权限: chmod +x test
    调用时和普通的shell程序一样: ./test.php --username=admin --password=admin
    输出结果:int(3)
    array(3) {
      [0]=>
      string(7) "./t.php"
      [1]=>
      string(16) "--username=admin"
      [2]=>
      string(16) "--password=admin"
    }
      

  4.   

    参考http://topic.csdn.net/u/20100927/10/9b6e5655-617d-44fc-b63c-cd9cbd31ca6e.html?95672
      

  5.   

    可以使用一个不断执行的页面来完成这个工作,在程序中判断每个小时进行一次操作即可:
    set_time_limit(0);//这里写你要处理的代码
      

  6.   

    谢谢各位兄台回复,小弟会一一尝试学习。我的虚拟空间是windows server,不知道能否支持这些建议
      

  7.   

    查了一下,这个参数是开着的
    register_argc_argv = on
    研究一下CLI接口
      

  8.   

    使用Cli是否就和调用页面一样?不需要命令行执行吧?远程虚拟主机好像不提供命令行
    php.ini   safe_mode   关闭
      

  9.   

    租的服务器不太可能
    自己的服务器的话可以用shell直接调用php
      

  10.   

    PHP有自动运行任务的功能
    可以百度下:PHP 自动 运行 任务
      

  11.   

    你可以 在windows中设置自动运行任务就行了 没问题的
      

  12.   

    不一定非要PHP,可以尝试用其它的语言解决这个问题,C、SHELL,PYTHON。