PHP中有什么方法可以实现用户见共享变量的?

asbeforelong 2010-01-17 05:59:41
除了用数据库和文件方式PHP中有什么方法可以实现用户见共享变量的?ASP中有Application对象, PHP中有类似的东西吗?
...全文
184 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
骄傲青蛙 2010-01-24
  • 打赏
  • 举报
回复
今天再看此帖, 发现原来是用户共享,

既然不能用数据库, 和文件, 那只有共享服务器上的内存

1. 十楼的答案, 

2. 用memcached
amani11 2010-01-19
  • 打赏
  • 举报
回复
选数据库吧
床上等您 2010-01-19
  • 打赏
  • 举报
回复
文件或数据库,建议是数据库吧。。。。
jeff1987 2010-01-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 coolesting 的回复:]
第一, 用cookie, $_COOKIE

第二, 用$_SESSION

第三, global $var;

第四, &引用

第五, $GLOBALS引用

[/Quote]

不同的用户能共享这些吗? 乱说

不同的用户共享数据:
1. 数据库共享
2. 可以通过写文件共享(写文本,写数组,写json,写xml ....)
3. 通过cache (memcached)【内存】
vagetable 2010-01-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 brilliant_fgh 的回复:]
顶楼上的!
[/Quote]
ding
littlebirds 2010-01-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 acmain_chm 的回复:]
global $var; 中的就可以了。
[/Quote]
是这样的
nta5107179 2010-01-19
  • 打赏
  • 举报
回复
先引用一段别人的话

php有两套使用共享内存的函数,一套是System V IPC函数的封装,另一套是shmop。
这两个都无需安装外部库文件。
前者只能在linux下使用,而且要使用它的话,在安装php的时候要加上–enable-sysvshm选项;
而后者在linux和windows(win2k之后的系统,win98不支持)都可以使用,但在windows的时候,只有在php是ISAPI运行模式才能正常工作,在安装php的时候要加上–enable-shmop。

其中我只在windows下尝试用过shmop
$shm_id = shmop_open(12345, "w", 0, 0); // 打开key为12345的共享内存,第二个参数w表示以读写方式打开,打开已存在的共享内存,第三个和第四个参数必须是0
$shm_data = shmop_read($shm_id, 0, 3); // 从共享内存里面读取3字节的数据,第二个参数是偏移地址,0表示共享内存的起始地址
echo $shm_data; // 打印出上个函数返回的共享内存数据
shmop_delete($shm_id); // 删除共享内存
不过我测试的时候发现一个问题,shmop_delete($shm_id);并不能删除共享内存,也就是说在关机之前一直存在,而且据说shmop的稳定性不好,且很少有人用过,用不用就看楼主了。

同样推荐数据库存储,文件缓存的方式
helloyou0 2010-01-18
  • 打赏
  • 举报
回复
[Quote=引用楼主 asbeforelong 的回复:]
除了用数据库和文件方式PHP中有什么方法可以实现用户见共享变量的?ASP中有Application对象, PHP中有类似的东西吗?
[/Quote]

主要就是数据库和文件. php没有application这个概念.

1-5楼都没明白你问什么
HOOLOO 2010-01-18
  • 打赏
  • 举报
回复
两个登录用户之间的共享好像只有这两种方法。
lvhong84 2010-01-18
  • 打赏
  • 举报
回复
共享内存,不过只能在linux下用
骄傲青蛙 2010-01-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zczww2008 的回复:]
$_SESSION可以吗,不是说一个用户连接对应一个$_SESSION么?
我也是新手不懂


[/Quote]

虽然是一个id, 但他是一个数组, 你随意插入什么值, 怎么用都可以, 如果不熟悉数组那就无语了
zczww2008 2010-01-17
  • 打赏
  • 举报
回复
$_SESSION可以吗,不是说一个用户连接对应一个$_SESSION么?
我也是新手不懂

ACMAIN_CHM 2010-01-17
  • 打赏
  • 举报
回复
global $var; 中的就可以了。
brilliant_fgh 2010-01-17
  • 打赏
  • 举报
回复
顶楼上的!
骄傲青蛙 2010-01-17
  • 打赏
  • 举报
回复
第一, 用cookie, $_COOKIE

第二, 用$_SESSION

第三, global $var;

第四, &引用

第五, $GLOBALS引用

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧