Maison  >  Article  >  développement back-end  >  php的单例是否能存留到第二个请求发送的时候呢

php的单例是否能存留到第二个请求发送的时候呢

WBOY
WBOYoriginal
2016-10-22 00:14:32995parcourir

请问下PHP单例的生命周期是怎么样的呢?
比如我在第一个请求中取得一个单例,然后对其中变量$a进行赋值。这样在第二个请求的时候,是否可以取得这个$a变量?
关于这方面的知识,有经验的亲们,有什么优秀的博文或者书籍推荐学习的吗,多谢了?

回复内容:

请问下PHP单例的生命周期是怎么样的呢?
比如我在第一个请求中取得一个单例,然后对其中变量$a进行赋值。这样在第二个请求的时候,是否可以取得这个$a变量?
关于这方面的知识,有经验的亲们,有什么优秀的博文或者书籍推荐学习的吗,多谢了?

不可能,php是单进程单线程的

答案是不会,因为脚本结束的时候所有变量都已经释放了.

我觉得你需要了解下php的生命周期

<code>    
  1. PHP是随着WEB服务器(apache)的启动而运行的;
  2. PHP通过mod_php5.so()模块和服务器(apache)相连
  3. PHP总共有三个模块:内核、Zend引擎、以及扩展层;
  4. PHP内核用来处理请求、文件流、错误处理等相关操作;
  5. Zend引擎(ZE)用以将源文件转换成机器语言,然后在虚拟机上运行它;
  6. 扩展层是一组函数、类库和流,PHP使用它们来执行一些特定的操作。比如,我们需要MySQL扩展来连接MySQL数据库;
  7. 当ZE执行程序时可能会需要连接若干扩展,这时ZE将控制权交给扩展,等处理完特定任务后再返还;
  8. 最后,ZE将程序运行结果返回给PHP内核,它再将结果传送给SAPI层,最终输出到浏览器上。
  
  
</code>
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn