Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在PHP应用程序中有可能有太多函数吗?

在PHP应用程序中有可能有太多函数吗?
EN

Stack Overflow用户
提问于 2010-06-11 05:44:58
回答 7查看 2.7K关注 0票数 6

PHP应用程序的函数会不会太多?执行大量PHP函数会占用大量内存和资源吗?我正在开发的WordPress主题有很多函数(到我完成时可能超过100个),我担心我可能有太多的函数。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-06-11 05:58:15

我不会关心100个函数。这是非常少的函数。

全局函数和方法被编译、存储在内存中,并在哈希表中进行索引(除了最近实现的缓存查找)。当调用函数时,随着函数数量的增加,性能不会下降,因为访问哈希表的平均时间是恒定的。

但是,解析脚本会有更多的开销,如果您实际调用所有这些函数,还会编译它们。如果您使用操作码缓存,这不是一个真正的问题。也会有更多的内存开销,但通常情况下,内存在企业级web服务器中不是问题,在企业级web服务器中,尝试尽可能快地服务于请求更合适,而不是太关心内存。

还有一些风格上的问题。如果您的全局函数太多,请考虑是否:

  • 您正在这些函数之间复制代码。考虑重构,将公共代码移动到其他函数,并通过添加参数来泛化函数的行为,其中appropriate.
  • You将对在类中操作相同数据的函数进行更好的分组。

最后,只有当您分析应用程序并发现函数调用是CPU瓶颈,而函数定义是内存瓶颈时,才会担心这一点。

票数 3
EN

Stack Overflow用户

发布于 2010-06-11 05:51:12

即使许多函数会导致更多的内存消耗,我也建议您无论如何都要使用它们。清晰的结构比性能更重要。

性能可以通过throwing hardware at it来提高,一个结构不好的应用程序很快就很难维护。

顺便说一句: 100个函数什么都不是!

票数 8
EN

Stack Overflow用户

发布于 2010-06-11 05:52:02

100个函数没什么好担心的。如果你的代码很慢,你应该对它进行分析,以明确地找到慢的部分。

记住,过早的优化是邪恶的。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3020444

复制
相关文章
函数调用太多了会有性能问题吗?
现代的开发工作中,相信绝大部分的同学手头的项目都不是从第零行代码开始搭建的。各个语言都有自己流行的代码框架,如PHP的有Laravel、CodeIgniter、ThinkPHP等等。大家都是在自己的框架的基础上添加自己的业务代码逻辑,开启开发工作。还记得我们团队有位开发同学当时问过我一个问题,我们用xx框架这么重,一个用户请求过来即使什么也不干,都已经进行了那么多次的函数调用了,适合用来做接口开发吗?
开发内功修炼
2022/03/24
8650
地图函数在 Python 中有什么用?
Python 的 map() 函数将一个函数应用于迭代器中作为输入提供的每个项目。列表、元组、集合、字典或字符串都可以用作迭代器,它们都返回可迭代的映射对象。Map() 是一个内置的 Python 函数。
很酷的站长
2023/02/20
7240
地图函数在 Python 中有什么用?
PHP中有关正则表达式的函数集锦
之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载。当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有提到),之前根本就不知道有这东西,所以就自己废着劲去学习正则表达式,然后再学习PHP中正则表达式的函数是如何使用的,然后再分析自己要抓取的DOM,最后写自己的正则表达式,正则表达式,写着还可以,不过自己刚写完的正则表达式就可能看不出他是什么意思。   有种调侃正则表达式式的说法,把正则表达式叫做火星文。当第一
lizelu
2018/01/12
1.1K0
Spring Batch 可以在一个 Step 中有多个 Tasklet 吗
根据 Spring Batch 的设计,在一个 Step 中只能执行一个 Tasklet。
HoneyMoose
2022/10/15
1.4K0
Spring Batch 可以在一个 Step 中有多个 Tasklet 吗
代码里注释写太多,会挨打吗?
前几天,有个同行朋友在我的微信上留言,问我项目代码里注释写太多会挨打吗?顺手还给我甩了一张截图,上面密密麻麻的全是手工注释。
闰土大叔
2018/11/23
4.3K0
MySQL数据查询太多会OOM吗?
我的主机内存只有100G,现在要全表扫描一个200G大表,会不会把DB主机的内存用光?
JavaEdge
2021/12/07
9580
MySQL数据查询太多会OOM吗?
MySQL数据查询太多会OOM吗?
我的主机内存只有100G,现在要全表扫描一个200G大表,会不会把DB主机的内存用光?
JavaEdge
2021/10/18
9880
在PHP中如何为匿名函数指定this?
关于闭包匿名函数,在JS中有个很典型的问题就是要给它绑定一个 this 作用域。其实这个问题在PHP中也是存在的,比如下面这段代码:
硬核项目经理
2020/05/13
2.2K0
深度学习能学会幽默吗?TED视频可能有点难
论文标题:UR-FUNNY: A Multimodal Language Dataset forUnderstanding Humor
AI科技评论
2019/11/26
1.1K0
深度学习能学会幽默吗?TED视频可能有点难
程序员在写代码的时候bug太多会给计算机造成损坏吗?
原则上程序员写代码调试对于计算机的冲击是有限的,但编程来讲不是什么都是绝对的,如果是windows编程写的代码对于cpu或者硬盘有非常大的冲击,也会造成计算机损害但这种概率还是非常低的,所以对于软件开发来讲可以进行无数次的试错,而且成本代价很低,这是软件开发相比硬件要好的地方。硬件的开发试错成本就会提升很多,硬件的试错需要具体的器件,如果运行不成功很可能导致器件的损坏。
程序员互动联盟
2020/06/12
1.8K0
在PHP中strpos函数的正确使用方式
首先简单介绍下 strpos 函数,strpos 函数是查找某个字符在字符串中的位置,这里需要明确这个函数的作用,这个函数得到的是位置。 如果存在,返回数字,否则返回的是 false。 而很多时候我们拿这个函数用来判断字符串中是否存在某个字符,一些同学使用的姿势是这样的 // 判断‘沈唁志博客’中是否存在‘博客’这个词 if (strpos('沈唁志博客', '博客')) { // 如果存在执行此处代码 echo '存在'; }else{ // 如果不存在执行此处代码 e
沈唁
2018/05/24
5.2K0
在 WordPress 中实现 PHP 版本的 wrap 函数
jQuery 有个 wrap 函数,可以使用指定的 HTML 元素来包裹每个被选元素。
Denis
2023/04/13
5830
PHP在函数体中传递与接收参数
默认情况下,PHP是按值传递参数的。值传递参数调用函数时将常量或变量的值(通常称其为实参)传递给函数的参数(通常称为形参)。值传递的特点是实参与行参分别存储在内存中,是两个不相关的独立变量。因此,在函数内部改变形参的值时,实参的值一般是不会改变的。
用户7657330
2020/08/14
2.7K0
Docker PHP应用程序示例
我们可以使用docker运行php应用程序。在以下步骤中,将使用创建Docker并运行php应用程序。
黑洞代码
2022/01/04
9390
数学相关函数在PHP中的应用简介
对于数学计算来说,最常见的其实还是我们使用各种操作符的操作,比如说 +加、-减 之类的。当然,PHP 中也为我们提供了一些可以方便地进行其他数学运算的操作函数。这些函数都属于 Math 扩展。这个扩展是默认包含在 PHP 源码中的,不需要额外的安装,也不需要在编译的时候有什么特别的参数,都是直接可以使用的。
硬核项目经理
2021/09/02
1K0
什么是闭包,Java中有闭包吗?
所谓闭包,就是在函数中有另一个函数,这个内部函数可以作为参数,外部通过传递的方式,将函数传递进来。从而内部函数可以访问到外部函数的局部变脸。
半月无霜
2023/03/14
2.6K0
什么是闭包,Java中有闭包吗?
应用程序设计:在动态库中如何调用外部函数?
不论是在 Windows 系统中,还是在 Unix 系列平台上,到处都能见到我的身影,因为我能为大家节省很多资源啊,资源就是人民币!
IOT物联网小镇
2021/06/22
2.7K0
应用程序设计:在动态库中如何调用外部函数?
点击加载更多

相似问题

PHP中有太多的模型吗?

34

在RactiveJS中有可能有计算函数吗?

11

在Cordova应用程序中有可能有“假上衣”吗?

17

在TextView中有可能有多种样式吗?

1927

在枚举的函数中有可能有惰性行为吗?

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文