jy04149886
V2EX  ›  PHP

php 的全局变量和静态变量怎么玩?

  •  
  •   jy04149886 · Feb 9, 2015 · 4227 views
    This topic created in 4160 days ago, the information mentioned may be changed or developed.
    像那种每个请求进入的时候变量自增1的方法?
    10 replies    2015-02-16 16:10:29 +08:00
    oott123
        1
    oott123  
       Feb 9, 2015
    XCache
    memcache
    redis
    MySQL
    jy04149886
        2
    jy04149886  
    OP
       Feb 9, 2015
    @oott123 为何用这些。。。难道php语言不支持全局变量么。。。用这些实现这功能有点麻烦吧。。。
    haiyang416
        3
    haiyang416  
       Feb 9, 2015 via Android
    全局变量也会在请求结束后销毁,你要持久话就存到数据库或者文件里去。
    t6attack
        4
    t6attack  
       Feb 9, 2015
    oott123
        5
    oott123  
       Feb 9, 2015   ❤️ 1
    php 自然是支持全局变量的。
    但 php 的生命周期仅限在一个请求。
    所以,要统计“请求数”,你必须把它保存在其他的地方——shared memory 也好,外部的 cache server 或者 database 或者写文件也好。
    jy04149886
        6
    jy04149886  
    OP
       Feb 9, 2015
    @oott123 好吧,谢了,以前貌似听说过这些,不过今天才遇到这个问题,知道解决办法了
    laoyuan
        7
    laoyuan  
       Feb 9, 2015
    用PHP不会玩,只能上内存数据库
    jackmasa
        8
    jackmasa  
       Feb 10, 2015
    写文件需要注意原子性的问题
    msg7086
        9
    msg7086  
       Feb 10, 2015
    全局变量里的全局是整个脚本的运行过程。
    PHP跑网站是按照脚本语言的流程跑的,不是守护进程的流程。

    同理可以反过来推广一下。
    如果我一个机柜里跑了一个PHP应用的集群,「全局」变量也不会在这些集群里跨服共享的。
    picasso250
        10
    picasso250  
       Feb 16, 2015
    泥萌都误解楼主了, 只要把 $_SESSION 讲出来, 楼主就满意了.

    哼, 楼上这些秀逼格的...
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3164 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 13:31 · PVG 21:31 · LAX 06:31 · JFK 09:31
    ♥ Do have faith in what you're doing.