先看看下面的代码:
<?php session_start(); $_SESSION['username']='lucy'; ?>
当我们请求访问上面的脚本,默认会在我们的客户端生成一个名为PHPSESSID的cookie,我这里的值是PHPSESSID=e447hc9kpn6h44i58aj2931cu2;
我们去服务器端查看session文件保存的位置发现已经创建一个名为sess_e447hc9kpn6h44i58aj2931cu2的session文件;
打开sess_e447hc9kpn6h44i58aj2931cu2这个session文件看到其中的内容是:username|s:4:"lucy";
通过以上我们可以看到session是依赖于cookie的,服务器端是根据http请求头中PHPSESSID来找到对应的session文件进行处理的,那么是不是cookie禁用后session就无法使用了,事实上cookie禁用session依然可以用,只需要开启php.ini中的session.use_trans_sid = 1配置即可
function objtoarr($obj){ $ret = array(); foreach($obj as $key =>$value){ if(gettype($value) == 'arr...
上篇文章已经讲解arrayacces的原理,现在来讲解下arrayaccess的实际应用。一个大型的互联网项目中必然会存在各种配置信息,例如多种数据库信息:mysql,tidb,mongodb,redis,某个业务模块单独的配置信息如比例,额度等等,那么该如何治理配置信息?PHP项目中大部分的框架都...
参数中包含gb2312的字符串,返回结果是false或者null(不同PHP版本具有差异性)代码:<?php $dbms = 'mysql'; $host = '192.168.8.8'; $dbName =&n...
最近在公司开发一个新的项目假设项目域名是a.com,需要接入b.com的单点登陆系统。(1).首先我们会在a.com的登陆页面用iframe引入b.com来显示登陆界面,实际上登陆验证操作都是在b.com上面(2).当b.com验证通过,会在前端ajax请求a.com的回调地址,这个回调地址目的就是...
今天帮朋友查询wordpress执行超级慢的原因,特此记录开启fpm的慢日志,记录执行超过30秒的脚本request_slowlog_timeout = 30 slowlog = var/log/slow.log查看日志[23-May-2019 17...
在使用ftok生成ipc进程通信key尝试将第二个参数项目标识符传入字符串报错:PHP Warning: ftok(): Project identifier is invalid,查阅资料发现第二个字符串只能是1个字符串,长度为1....