Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP能否作为客户端与服务器保持持久会话?_Php_Session_Client_Fopen - Fatal编程技术网

PHP能否作为客户端与服务器保持持久会话?

PHP能否作为客户端与服务器保持持久会话?,php,session,client,fopen,Php,Session,Client,Fopen,假设我在家用电脑上打开浏览器,我访问使用会话的站点,只要我不关闭浏览器或保持24分钟空闲,会话将在我向站点发出后续HTTP请求时保持 但是,在运行PHP的服务器上,如果我使用fopen()或file_get_contents()从同一个站点请求页面,该站点是否为作为我的服务器的“用户”创建会话?有没有办法保持连接打开,以便为后续的fopen()请求维护会话 我可以通过在后续请求的请求头中传递会话id来实现这一点吗?ie我设置包含会话id的头,将头传递给上下文\u stream\u create(

假设我在家用电脑上打开浏览器,我访问使用会话的站点,只要我不关闭浏览器或保持24分钟空闲,会话将在我向站点发出后续HTTP请求时保持

但是,在运行PHP的服务器上,如果我使用fopen()或file_get_contents()从同一个站点请求页面,该站点是否为作为我的服务器的“用户”创建会话?有没有办法保持连接打开,以便为后续的fopen()请求维护会话


我可以通过在后续请求的请求头中传递会话id来实现这一点吗?ie我设置包含会话id的头,将头传递给上下文\u stream\u create(),然后通过下一个fopen()请求传递上下文?对于POST请求(这是我真正需要做的)可以这样做吗?

任何会说HTTP语言的应用程序都能够保存cookie,从而将状态保存在HTTP中

你的问题的答案是肯定的。只要使用正确的协议(GET/POST)并发送正确的头文件(主机、用户代理等),您就可以做任何事情
但是你有另一种解决方案,我认为这个类会有所帮助:

看起来它可以用于我正在做的事情,但它是否包括在每个请求中发送自定义头的方法?@Joey你也可以使用curl。您可以发送任何想要的头,包括会话id cookie。Browser类没有添加任意头的方法,但由于它使用CURL,您只需几行代码即可。