如果是这样......任何想法如何?我是否可以扩展CI_Profiler类以显示SESSION变量?
1
A
回答
5
你可能有兴趣在这个岗位约adding sessions to the profiler基本上它的工作原理是建立一个MY_Profiler.php文件,复制并粘贴代码:
<?php if(!defined('BASEPATH')) exit('No direct script access allowed');
class MY_Profiler extends CI_Profiler {
/**
* Adds session data to the profiler
* Adds a table row for each item of session data with the key and value
* Shows both CI session data and custom session data
*/
function _compile_session() {
$output = "\n\n";
$output .= '<fieldset style="border:1px solid #009999;padding:6px 10px 10px 10px;margin:20px 0 20px 0;background-color:#eee">';
$output .= "\n";
$output .= '<legend style="color:#009999;"> '.'SESSION DATA'.' </legend>';
$output .= "\n";
if (!is_object($this->CI->session)) {
$output .= "<div style='color:#009999;font-weight:normal;padding:4px 0 4px 0'>".'No SESSION data exists'."</div>";
} else {
$output .= "\n\n<table cellpadding='4' cellspacing='1' border='0' width='100%'>\n";
$sess = get_object_vars($this->CI->session);
foreach ($sess['userdata'] as $key => $val) {
if (! is_numeric($key)) {
$key = "'".$key."'";
}
$output .= "<tr><td width='50%' style='color:#000;background-color:#ddd;'>$_SESSION[".$key."] </td><td width='50%' style='color:#009999;font-weight:normal;background-color:#ddd;'>";
if (is_array($val)) {
$output .= "<pre>" . htmlspecialchars(stripslashes(print_r($val, true))) . "</pre>";
} else {
$output .= htmlspecialchars(stripslashes($val));
}
$output .= "</td></tr>\n";
}
$output .= "</table>\n";
}
$output .= "</fieldset>";
return $output;
}
function run() {
$output = "<div id='codeigniter_profiler' style='clear:both;background-color:#fff;padding:10px;'>";
$output .= $this->_compile_uri_string();
$output .= $this->_compile_controller_info();
$output .= $this->_compile_memory_usage();
$output .= $this->_compile_benchmarks();
$output .= $this->_compile_get();
$output .= $this->_compile_post();
$output .= $this->_compile_queries();
$output .= $this->_compile_session();
$output .= '</div>';
return $output;
}
}
0
当然可以,只要创建一个MY_profiler并添加两个方法:运行()和_compile_session() 的run()是一样的父刚才复制的代码&末添加_compile_session和_compile_session可以有相同的代码_compile_post,只是改变$ _ POST到$ _SESSION
相关问题
- 1. 是否可以扩展类
- 2. 是否可以“扩展”财产“类”?
- 3. 是否可以扩展DataColumn.Expression
- 4. 是否可以从扩展
- 5. 是否可以使用扩展方法扩展泛型类?
- 6. 托管bean是否可以扩展DTO
- 7. 是否可以扩展Java Enums?
- 8. 是否可以扩展布局?
- 9. 是否可以扩展现有的TypeConverter?
- 10. 是否可以在Android中扩展Canvas?
- 11. 是否可以从Twig_Lexer扩展?
- 12. 是否可以扩展快速申请
- 13. 是否可以扩展Intellitrace事件?
- 14. 是否可以将可扩展性量化为一项要求?
- 15. 我们可以从@Embedded扩展@Entity类
- 16. 我可以扩展Overlay类吗?
- 17. 我可以扩展php类型吗?
- 18. 一个类是否可以扩展两个或更多类
- 19. 是否可以同时扩展活动类和PreferenceActivity类
- 20. 类别方法是否可以扩展到子类?
- 21. 是否可以通过扩展组件来使函数特定变量可见?
- 22. 是否可以“扩展”或重新使用Eclipse扩展点?
- 23. 是否可以在emacs中突出显示插值perl变量?
- 24. 是否可以在COBOL中使用变量进行显示?
- 25. 是否有可能让变量只显示“模块”及其扩展名?
- 26. 我可以使用UIDocumentationInteractionController显示应用程序扩展吗?
- 27. 是否可以有一个类扩展号码?
- 28. 是否可以将内部接口扩展到其他类?
- 29. 扩展Struts2/XWork ValidatorSupport的类是否可以具有状态
- 30. C++的value_type是否可以从iterator_traits扩展到所有类型?