php - PHP 如何管理加载到内存中的函数?

标签 php laravel

我最近正在使用 Laravel 框架开发一个 PHP 项目。我想知道 PHP 未使用的函数/方法是否已加载到内存中?。我读到解释语言的优点之一是它们具有自动内存管理。但是,这并没有回答我是否加载它们的问题。这种自动内存管理是否处理提到的情况?

当我运行时我的内存实际上发生了什么:

php artisan serve

我的整个 Laravel 项目都被加载到内存中了吗?

如果是,作为开发人员是否有责任处理加载常用的函数/方法?此外;我如何决定将其存储在何处或基于哪些原则? (注意:您不必向我解释所有内容,只需将我重定向到手册即可)

如果不是,它在哪里存储它的方法或函数(即缓存、交换到硬盘)?此外,它们是存储为纯代码还是已经被解释以供进一步使用?

最佳答案

不,它并没有全部加载到内存中!这是因为 Laravel(就像许多 PHP 库和框架一样)使用了一个自动加载器,它只加载处理请求所需的内容,并且只在需要时加载。

但是,如果您正在使用 opcache,它会将字节码加载到 opcache,并且将保留在 opcache 中直到被清除

关于php - PHP 如何管理加载到内存中的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48038207/

相关文章:

PHP 的 error_log() 与 syslog()

php - 移动浏览器的 Javascript/PHP 页面超时

php - Laravel 身份验证 - 不同表中的电子邮件

javascript - 在 Laravel 5.7 的 vue js 中使用 jquery

php - 从 asXML() 获取 XML 标签

php - 使用 PHP、Laravel、GD 上传图像并将多种尺寸保存到文件系统

php - 想象一下 ZF2 : Ratio Resize

php - Laravel 5.8 护照 "resulted in a ` 401 未经授权`"

php - Laravel - 批量分配异常错误

Laravel 4.2 SuperClosure : Attempted to serialize unserializable builtin class Closure