【发布时间】:2015-04-05 23:30:34
【问题描述】:
我的 PHP 代码中有两次相同的 5 行代码:
do_something1();
$myvar1 = something1();
do_something_else2();
$myvar2 = something2();
do_something_else3();
$myvar3 = something3();
// another code
// ...
// another code
do_something1();
$myvar1 = something1();
do_something_else2();
$myvar2 = something2();
do_something_else3();
$myvar3 = something3();
这样的人能避免重复吗?
@BEGINNING BLAH
do_something1();
$myvar1 = something1();
do_something_else2();
$myvar2 = something2();
do_something_else3();
$myvar3 = something3();
@END BLAH
// another code
// ...
// another code
@INSERT BLAH
当然,我可以定义一个新的function,但是在这里,我必须定义global 变量(我应该在使用global 调用函数本身之前预先定义变量吗?)等等。
这就是为什么我一直在寻找在这种情况下是否存在比 function 更短的东西,例如预处理器复制/粘贴。
【问题讨论】:
-
我认为您必须向我们展示您的真实代码才能告诉您如何优化它
-
@Rizier123 这里是需要调用两次的代码:pastebin.com/ERVmMsWZ。此代码导出 $pageheader、$pagecontent、$pagetitle 和 $linkurl。
-
所以你的问题是返回变量?
-
@Rizier123 不是真的:我的问题(这不是一个真正的问题)是要知道除了函数之外是否还有其他东西可以做到这一点......
-
那么我认为除了将它包装在一个函数中并通过引用使用或返回变量之外别无他法。 PHP 不是魔法