除了用数据库和文件方式PHP中有什么方法可以实现用户见共享变量的?ASP中有Application对象, PHP中有类似的东西吗?
解决方案 »
- mysql数据库中存储乱码数据PHP读出后ajax传输不了问题
- php调用C或C++ 动态链接库(dll)问题
- 急!!(菜鸟)怎么才能把两个PHP页面文件放到一个页面里
- 多条表操作 该如何优化
- $obj->getArray()->getValue('1'); 问题
- 想做一个动态创建表单的程序,请高手给个思路。
- 有关日期函数的问题+万年历
- mysql能改数据库的名字吗?怎么改啊?或者有什么变通的方法吗?
- 为每篇文章都在用户那加个COOKIE代表已查看过..合理吗?
- 求大神帮实现购物车商品相同问题
- 如何判断字符串中值的类型并将其转换成对应变量类型 例'12.1','10', 'string'->12.1,10,'string'
- 打开PHP文件显示的是源码(即是显示代码),地址栏显示的是路径,谁来帮帮忙啊
我也是新手不懂
主要就是数据库和文件. php没有application这个概念.1-5楼都没明白你问什么
这两个都无需安装外部库文件。
前者只能在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的稳定性不好,且很少有人用过,用不用就看楼主了。同样推荐数据库存储,文件缓存的方式
不同的用户能共享这些吗? 乱说不同的用户共享数据:
1. 数据库共享
2. 可以通过写文件共享(写文本,写数组,写json,写xml ....)
3. 通过cache (memcached)【内存】