是否可以刷新运行页面中的所有变量,或者我可以获得已存储一些数据的全部变量列表?刷新所有变量在php
3
A
回答
4
看一看
get_defined_vars()
http://php.net/manual/en/function.get-defined-vars.php
如果你要打印的变量(包括超全局)的完整列表只是:也
print_r(array_keys(get_defined_vars()));
,因为一些其他人所说在评论中,如果你需要这种方式,你需要考虑减少你使用的变量的数量。要做到这一点(在我的经验)这三个最简单的方法是在适当的时候覆盖的变量,例如(愚蠢的例子):
$subtotal = 0;
for($i=0;$i<10;$i++){
$subtotal = $subtotal + $i;
}
$total = $subtotal;
可以更好的写法:
for($total=0;$total <10;$total++){
//nothing, I'm just itterating
}
它可以让你有一个是单个变量而不是三个(这也会减少内存分配)。另一个有用的技巧是将相关变量存储在数组或对象中。例如,而不是:
$number_of_widgets = 10;
$size_of_widgets = '120cm';
$cost_of_widgets = '$10.00';
$number_of_cogs = 13;
$size_of_cogs = '40cm';
$cost_of_cogs = '$3.00';
这是很容易保持跟踪(并有助于防止意外可变覆盖),如果您将它们添加到关联数组:
$widgets = array('quantity'=>10,'size'=>'120cm','cost'=>'$10.00');
$cogs = array('quantity'=>13,'size'=>'400cm','cost'=>'$3.00');
最后,如果您变量是不会被修改(而不是数组),只要用一个定义的常量:
define('MAX_WIDGET_QUANTITY',300);
这样做的好处是:(a)它真的很容易在未来的管理如果你想改变(b)它在全球范围内自动可用;(c)它使代码更易于阅读,因为显然它应该是一个固定值,不应该被修改。
还有其他一些技巧,但这些技巧通常会让你走向可变的可管理性。
1
您可以使用get_defined_vars来做到这一点。
从链接的页面:
该函数返回一个包含 所有定义的变量的列表的多维数组,是他们的环境中,服务器或用户定义的 变量,范围内的是get_defined_vars()是内调用。
所以这会给你所有的变量的名称:
array_keys(get_defined_vars())
相关问题
- 1. 刷新PHP会话变量
- 2. 做一个javascript变量到php变量没有刷新页面
- 3. 更新不需刷新的PHP变量
- 4. 更新变量而不刷新PHP
- 5. 刷新变量
- 6. Ajax PHP包括刷新变量
- 7. 刷新Javascript和检索PHP变量
- 8. 基于PHP变量的HTML刷新
- 9. 通过AJAX刷新传递php变量
- 10. 刷新Java变量
- 11. 更新PHP变量,并在页面刷新
- 12. 刷新而不刷新所有页面
- 13. jQuery .post()刷新页面PHP变量没有在Cake中出现白屏PHP
- 14. C++需要刷新变量
- 15. jquery插件刷新变量
- 16. AJAX变量刷新帮助
- 17. 更新的php会话变量没有更新,除非点击“刷新”
- 18. 刷新时PHP中的自动增量数值变量
- 19. php在刷新网站后保持变量值
- 20. PHP会话变量在刷新时显示为空
- 21. 打印变量值出在PHP中foreach循环的无刷新
- 22. PHP会话变量在页面刷新后空白
- 23. 自动刷新一个PHP变量在HTML页面
- 24. OO PHP将所有私有变量作为变量返回
- 25. 会话变量在刷新时重置
- 26. 如何在刷新时保存变量?
- 27. 更新PHP变量时自动刷新div
- 28. css中的PHP变量不更新/刷新
- 29. 获取php变量从url重新加载而不刷新
- 30. 刷新活动与更新变量
如果你要问,你的架构可能需要细化。如果你限制你的变量范围,没有太多需要跟踪的内容,并且每个范围都应该如此之小以至于变量总是被范围变化不断刷新。 – deceze 2012-02-02 13:13:46
我在页面中使用了如此多的变量,我可以获取我在此页面上分配的所有变量名称吗? – 2012-02-02 13:14:08
说了什么;如果您不得不使用'get_defined_vars()'来跟踪范围内的变量,那么您在该范围内的变量太多。 – cmbuckley 2012-02-02 13:17:47