php中定义的变量和数组与函数

时间:2012-04-04 23:07:59

标签: php arrays function optimization readability

简介

我有一些值,我可能想要在每个页面加载时多次访问。我可以采用两种不同的方法来访问它们,但我不确定哪种方法“更好”。三个已经实现的示例是我在此处描述的语言,URI和显示文本的几个选项:

语言

现在它以这种方式配置:lang()是一个根据参数返回不同值的函数。

示例:lang("full")打印当前语言“English”,而lang()打印当前语言的缩写“en”。还有更多选项,例如lang("select")lang("selectact")等打印不同的内容。代码太长,与案件无关,所以如果有人想要它只是要求它。

Url

$ Url数组还会根据请求返回不同的值。整个数组在页面开头完全定义,用于获得当前页面的更短但准确的链接。

示例:echo $Url['full']将打印“http://mypage.org/path/to/file.php?page=1”,echo $Url['file']将打印“file.php”。它对表单中的action=""和许多其他内容很有用。 $Url['folder']$Url['file']等有更多值。如果需要,代码的相同内容,请求它。

文字

[您可以跳过本节]

另一个名为$ Text的数组的定义方式与$ Url相同。整个数组在开始时定义,进行mysql调用并使用while循环定义当前页面的所有$Text[$i]。我不确定这是否比单个mysql单元的多次调用更有效。

示例:echo $Text['54']打印“这只是一个测试数组!”这可以通过text(54)等函数完美实现。

问题

通过3个示例,您可以看到我使用不同的方法来执行几乎相同的功能(没有双关语),但我不确定哪个应该成为我的代码的标准功能。我可以创建一个名为url()的函数和其他名为text()的函数来输出我想要的内容。我认为在这些情况下使用函数更好,但我不确定为什么。所以我非常感谢你的意见和建议。

我应该按照我描述的方式混合数组和函数,还是应该使用函数?

请在此基础上找到答案:

  • 其他开发人员需要可读可重用
  • 资源消耗(处理,时间和内存)。
  • 更短代码越好。
  • 解释的次数越多越好。

谢谢

PS,现在我知道$ url和$ Uri之间的区别。

2 个答案:

答案 0 :(得分:2)

听起来你通过数组表示法实现了模糊函数。通常,这些将是带有方法的类。 $url['full']将是$url->getFullPath()。方法比数组访问器更受欢迎,因为方法已记录在案,并且可以由IDE进行内省。对象更为可取,因为(在您的示例中)您可以延迟加载信息。现在,您的脚本正在编译$Url数组并计算每个可能键的值,以便可以在脚本中使用它。而$request对象只能根据请求进行解析 - 而不是实例化。

答案 1 :(得分:0)

我正在使用像config array var这样的东西。设置字符串的位置。以后阅读使用$LBL["hello"]='Hi!'lbl(5)更好。想想自己什么时候回到你的代码一年后:)