在 PHP 中何时使用类与函数

2024-02-07

灯泡还没有亮起来......

我真的很喜欢一个易于理解的解释,说明在 php 中使用类比仅使用函数的优势。

这是我现在的想法的一个简单例子,我想知道一个类是否更有效:

假设我有一个用 php 构建的迷你日历小部件。我正在考虑调用该函数miniCal('arrayVars1', 'var2')。但我可能会在该页面上执行两次。通过在此处使用类来创建它的新实例,是否可以使用更少的资源?

我应该在这里吠叫什么树,因为我觉得现在这棵树是一堵砖墙......


类用于将数据表示为对象。如果您要表示用户数据或拍卖出价之类的内容,则创建 User 对象或 AuctionBid 对象可以更轻松地将这些数据保存在一起,在代码中传递它,并使读者更容易理解。这些类将具有属性(数字、字符串或其他对象等数据字段)以及方法(可以在任何类上操作的函数)。

类通常不会在性能方面带来任何好处,但也很少产生任何负面影响。他们真正的好处是使代码更清晰。

我建议您阅读PHP5 面向对象编程指南 http://php.net/manual/en/language.oop5.php维基百科 OOP 条目 http://en.wikipedia.org/wiki/Object-oriented_programming.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 PHP 中何时使用类与函数 的相关文章

  • 如何在 Laravel 5 中使用 Orchestral/Tenanti 构建具有多个数据库的多租户应用程序?

    我正在尝试使用 Laravel 5 构建和应用程序 它应该是使用多个数据库的多租户数据库架构 我的雇主出于安全目的要求这样做 我尝试手动管理主数据库迁移和租户迁移 但失败了 所以我决定借助 Laravel 特定包的帮助 这应该是我所需要的
  • 如何在 Laravel 模型中将 String 转换为 int

    这是我的解决方案 我在模型类中写了这个 评分是字符串类型 code int ratings 但我需要在从数据库检索 ratings 时更改它 我该怎么做 我们有一个模型的属性称为cast您可以在其中指定列名称 如下所示 The attrib
  • 如何将 gettext 字典中的术语输入 JavaScript?

    我正在尝试使用 php 和 javascript jquery 开发一个支持多种语言的网站 我正在尝试获得以下东西 高效 我需要尽可能减少这个操作的后端处理 可扩展 向翻译添加新字符串必须简单实用 问题是 我的 javascript 代码正
  • 无法连接到 SMTP 服务器

    我有一个支持邮件的服务器 比如说example com 我配置了服务器并通过cpanel添加了MX记录 这样我就可以通过outlook com有地址 email protected cdn cgi l email protection MX
  • 在 PHP 中从 URL 斜杠后获取两个单词

    我需要从 URL 中获取两个单词 例如我有以下 URL http mydomain com alrajhi invoice 108678645541 http mydomain com alrajhi invoice 10867864554
  • Symfony2 捕获会话超时

    我有一个关于 Symfony2 的问题 希望有人能帮助我 Symfony 在哪里检查用户会话以及没有会话时该怎么办 就像重定向到登录页面一样 我发现了一些类似的问题 但不是我的意思 我为什么想知道它 如果有会话超时 我想检查调用是否是 Xm
  • 用于解析差异的 PHP 类

    我正在编写一个 PHP 脚本 需要解释 Git 创建的 Diff 文件 如果我想解析 Diff 文件并基本上以完全不同的格式打印它 我应该如何进行 我遇到过Text DiffPEAR 库 但该库仅创建 Diff 本身 或者更确切地说 它只需
  • json_encode 返回 200 且未定义

    我想要一个代码来添加或删除数据库书签 代码已准备就绪 它可以正确地从数据库书签中添加和删除书签 但是当我调用该函数时 它会不断返回json error反而json success即使代码有效 我想知道代码 我从其他地方获得并改编的 有什么问
  • Laravel 检查集合是否为空

    我的 Laravel 网络应用程序中有这个 foreach mentors as mentor foreach mentor gt intern as intern tr class table row link td intern gt
  • 为不带引号的函数获取字符串参数

    我有一个函数 用于从 URL 下载文件并将其写入磁盘 并施加特定的文件扩展名 目前 它看起来像这样 import requests import os def getpml url filename psc requests get url
  • 如何将 XML 转换为 OCI-Lob 对象?

    我有一个 XML 如下
  • Zoopla 沙箱出现 cURL http 标头错误

    我正在为房地产经纪人开发代码 以通过他们的数据源将房产上传到 Zoopla 我在将所需的配置文件添加到所需的 http 标头时遇到问题 文档中唯一的示例是来自 Linux 的测试 echo branch reference test cur
  • WooCommerce 从前端(而不是管理员)隐藏订单项元

    我有一些我不希望客户看到的订单项元详细信息 在帐户信息下的查看订单页面上 我找到了一个过滤器 可以从管理员 我仍然希望看到它 中删除这些数据 但找不到类似的过滤器来从前端 应该隐藏它 中删除它 这是将从后端管理中删除它的代码 对我来说毫无用
  • 通过 Amazon SQS 将压缩文本从 PHP 发送到 NodeJS

    我似乎一直坚持通过 Amazon SQS 将压缩消息从 PHP 发送到 NodeJS 在 PHP 方面我有 SQS gt sendMessage Array QueueUrl gt queueUrl MessageBody gt artic
  • PHP Web 应用程序 (Magento) 遭到黑客攻击;这段黑客代码有什么作用?

    我刚刚安装的 Magento 1 3 2 4 被黑了 你能告诉我这段代码的目的是什么吗 另外 如何阻止这种情况以及如何发现漏洞 谢谢 function net match network ip ip arr explode network
  • Twitter API 响应并不总是按预期返回实体媒体

    考虑使用以下命令检索 Twitter 用户的收藏夹列表 abraham twitteroauth PHP 库 https github com abraham twitteroauth https api twitter com 1 1 f
  • 将 Unicode 字符转换为等效的 ASCII 字符

    为了索引和搜索的目的 我需要 展平 一些 Unicode 字符串 例如 我需要转换G the 转换为 ASCII 最后两个字符在 ASCII 中没有紧密的表示 因此可以完全丢弃它们 所以我的期望是 echo iconv UTF 8 ASCI
  • 按正确的顺序在字符串数组中查找常见字符

    我花了几天时间研究一个函数 以正确的顺序获取字符串数组中的常见字符 以创建通配符 这是一个解释我的问题的例子 我做了大约3个函数 但是当每个字母的绝对位置不同时 我总是遇到一个错误 我们假设 是 通配符 Array 0 gt 48ca135
  • 多维数组将每个列表数组存储在另一个数组中

    我嵌套了可能有 2 或 3 层深度的多维数组 在它里面我可能有也可能没有列表数组 我需要循环数组 Array 0 gt Array id gt 1 name gt cat name 1 list gt Array 1 gt swgdgbdg
  • Mysql 将 --secure-file-priv 选项设置为 NULL

    我在 Ubuntu 中运行 MySQL 我在运行特定的查询集时收到此错误 MySQL 服务器正在使用 secure file priv 选项运行 因此无法执行此语句 当我这样做的时候SELECT secure file priv 在我的 m

随机推荐

  • 让 nokogiri 使用较新版本的 libxml2

    我一直试图在我的计算机 Mountain Lion 上安装 Nokogiri 以与 rspec 和 capybara 一起使用 但对于我来说 我无法让它正常运行 据我所知 问题在于 nokogiri 使用了错误版本的 libxml2 到目前
  • 如何在android中以编程方式打开文件夹?

    我正在开发一个打开文件夹的Android应用程序 我的问题是如何在 Android 中以编程方式打开文件夹 我尝试了 stack overflow 中提供的所有解决方案并在 Google 中搜索 但找不到解决方案 有人可以给我答案吗 提前致
  • Wifi 睡眠,即使有锁

    总结 即使获取了wifi锁 当手机使用电池运行时 wifi也会在一段时间后断开 我已将问题简化为带有启动线程的按钮的单个活动 它只是向 PC 上运行的回显服务器发送 100 000 个字符串 每 100 毫秒一个字符串 请参阅下面的代码 我
  • 在 JavaScript 中从表格单元格获取值...而不是 jQuery

    我不敢相信这花了我多长时间 但当我使用 JavaScript 迭代表格时 我似乎无法弄清楚如何从 HTML 表格中提取单元格值 我正在使用以下内容进行迭代 var refTab document getElementById ddRefer
  • Android (Lollipop) EditText onFocus 多次触发

    我有几个带有 onFocusChangeListener 的 EditText When the field gains or loses focus txtMinimumValue setOnFocusChangeListener new
  • 可以在C++中使用正则表达式吗?

    重复 C 中有一个使用模式匹配 使用正则表达式 的函数吗 https stackoverflow com questions 329517 there is a function to use pattern matching using
  • 将函数动态应用到 Postgres 表中的所有列

    使用 Postgres 13 1 我想对表的所有列应用前向填充函数 前向填充函数在我之前的问题中进行了解释 如何将前向填充作为 PL PGSQL 函数 https stackoverflow com questions 70987689 h
  • 创建应用程序域并加载程序集

    我想创建一个具有默认权限的应用程序域 并以默认权限将程序集加载到应用程序域中 并执行程序集中的方法 你可以看看以下文章 http msdn microsoft com en us library ms173139 aspx在 MSDN 上
  • F#,在不使用临时变量的情况下通过管道转发匹配情况

    我想在不使用临时变量或 lambda 的情况下将变量通过管道转发到匹配情况 想法 let temp x gt Function1 gt Function2 Many functions later gt FunctionN let resu
  • 在 Gradle 中定义不依赖的任务顺序?

    Question 当两个任务都被执行时 我能否以某种方式确保一个任务将在另一个任务之前 之后执行 我don t想要在它们之间添加始终存在的依赖关系 背景 我有两项任务 一项任务启动服务器 另一项任务对其运行测试 启动该服务器的任务在一个新进
  • 以编程方式快速向工具栏添加按钮

    我很难快速地向工具栏添加一个按钮 下面你可以看到我想要的工具栏的图像 不幸的是 即使我在故事板文件中设计了它 它也不会显示在将工具栏设置为可见 我设计的方式有两个项目 第一个是flexable space元素 第二个是add元素 它看起来像
  • HttpServletRequest#getRemoteAddr() 返回 NULL

    为什么HttpServletRequest getRemoteAddr http docs oracle com javaee 6 api javax servlet ServletRequest html getRemoteAddr 28
  • 大矩阵计算

    我用 C 编写了一个简单的代码 然后在 linux ubuntu 11 04 上用 g 编译它 没有收到任何错误 但是当我运行可执行文件时 收到此错误 分段错误 我知道我的代码没有问题 并且这个错误与编译器有关 有人可以帮助我吗 我的代码是
  • RTMP:有这样的linux命令行工具吗?

    我到处寻找一个可以让我下载 rtmp 流的 Linux 实用程序 不是 flv 视频而是 MP3 流 我想要下载的流的位置就是这种格式 rtmp live site com loc 45 std fc74a6b7f79c70a5f60 mp
  • 如何在 bazel 中指定 cc_library 的输出工件?

    我想将 foo c 构建为库 然后在生成的 so上执行 readelf 而不是 a 我如何在bazel中编写它 以下 BUILD bazel 文件不起作用 cc library name foo srcs foo c genrule nam
  • 8 拼图有多少种可能的状态?

    经典的 8 块拼图属于滑块家族 我的书 人工智能 一种现代方法 作者 斯图尔特 拉塞尔 Stuart Russell 和彼得 诺维格 Peter Norwig 说 8 个难题9 2可能的状态 但为什么 2 你怎么得到这个 9 是拼图的可能配
  • 从 vb.net 执行 python 脚本

    如何从 VB NET 代码中执行 python 脚本 我想使用 VB NET 为我的 python 脚本构建 GUI 这是为了能够为脚本用户创建 GUI 我找到了这个例子 Shell c Program Files python 266 p
  • Karma 无法加载 webpack

    我收到此错误 16 07 2015 13 03 52 741 WARN preprocess Can not load webpack Error Can not resolve circular dependency Resolving
  • 用于拨打电话的 Web API [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有没有可以打电话的API进行电话交谈在网络中 也许基于 Flash 例如 Skype 但无需安装软件
  • 在 PHP 中何时使用类与函数

    灯泡还没有亮起来 我真的很喜欢一个易于理解的解释 说明在 php 中使用类比仅使用函数的优势 这是我现在的想法的一个简单例子 我想知道一个类是否更有效 假设我有一个用 php 构建的迷你日历小部件 我正在考虑调用该函数miniCal arr