﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <meta name="generator" content="Adobe RoboHelp 8">
<title>Variables View [PHP Debug Perspective]</title>
<link rel="StyleSheet" href="default.css" type="text/css">
<style type="text/css">
<!--
body { border-left-style:None;
border-right-style:None;
border-bottom-style:None;
background-color:Transparent;
border-top-style:None; }
-->
</style>
<style type="text/css">
<!--
body { border-left-style:None;
border-right-style:None;
border-bottom-style:None;
background-color:Transparent;
border-top-style:None; }
-->
</style>
<script type="text/javascript" language="JavaScript">
//<![CDATA[
function reDo() {
  if (innerWidth != origWidth || innerHeight != origHeight)
     location.reload();
}
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
	origWidth = innerWidth;
	origHeight = innerHeight;
	onresize = reDo;
}
onerror = null; 
//]]>
</script>
<style type="text/css">
<!--
div.WebHelpPopupMenu { position:absolute;
left:0px;
top:0px;
z-index:4;
visibility:hidden; }
p.WebHelpNavBar { text-align:right; }
-->
</style>
<script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>
<script type="text/javascript" language="javascript" src="whver.js"></script>
<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>
<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>
<script type="text/javascript" language="javascript1.2" src="whlang.js"></script>
<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>
<script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.gbWhTopic)
{
	var strUrl = document.location.href;
	var bc = 0;
	var n = strUrl.toLowerCase().indexOf("bc-");
	if(n != -1)
	{
		document.location.href = strUrl.substring(0, n);
		bc = strUrl.substring(n+3);
	}

	if (window.setRelStartPage)
	{
	addTocInfo("Reference\nPHP Perspectives and Views\nPHP Debug Perspective\nVariables View [PHP Debug Perspective]");
addAvenueInfo("Reference","debug_view.htm","breakpoints_view.htm");

	}

	document.write("<p style=\"text-align:left\"> ");
AddMasterBreadcrumbs("ide_help.htm", "", "&gt;", "Home", "pdt_table_of_contents.htm");
document.write("<a href=\"reference.htm\">Reference<\/a> &gt; <a href=\"php_perspectives_and_views.htm\">PHP Perspectives and Views<\/a> &gt; <a href=\"php_debug_perspective.htm\">PHP Debug Perspective<\/a> &gt; Variables View [PHP Debug Perspective]<\/p>");


	if (window.setRelStartPage)
	{
	setRelStartPage("ide_help.htm");

		autoSync(0);
		sendSyncInfo();
		sendAveInfoOut();
	}

}
else
	if (window.gbIE4)
		document.location.reload();
//-->
//]]></script>
</head>

<body leftmargin="5" topmargin="5" rightmargin="5" bottommargin="5"><script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.writeIntopicBar)
	writeIntopicBar(4);
//-->
//]]></script>
<div style="width: 100%; position: relative;" id="header">
	
	
 <p align="right"><a 
	 title="Documentation Survey" href="http://spreadsheets.google.com/viewform?formkey=dC1scEswTjFia2tDQ3Y5TVJBbkNQcWc6MQ">Documentation 
	 Survey</a> 
	 | <a href="javascript:crlf=&quot;&quot;;h=location.href;t=document.title;e = &quot;&quot; + (window.getSelection ? window.getSelection() : document.getSelection ? document.getSelection() : document.selection.createRange().text); if (e!=null) location=&quot;mailto:documentation@zend.com&quot; + &quot;?Subject= Feedback on PDT for page &quot; + escape(t) + &quot;&amp;Body=&quot; + escape(e).replace(/ /g, &quot;+&quot;) + crlf + &quot; &quot;; void 0"><span 
	 style="background-color: #ffffff;">Submit Documentation</span><span 
	 style="background-color: #ffffff;"> Feedback</span></a><span 
	 style="background-color: #ffffff;"></span><span style="background-color: #ffffff;"> 
	 </span><span style="background-color: #ffffff;">| 
	 </span><span 
	 style="background-color: #ffffff;"><a title="View Latest Version and Get PDF Online" 
											 href="http://www.zend.com/en/resources/zend-documentation/" 
											 target="_blank">View Latest 
	 Version and Get PDF Online</a></span></p>
</div>


<h1>Variables View [PHP Debug Perspective] 
 </h1>
<p>&#160;</p>
<p>The Variables view displays information about the variables associated 
 with the stack frame selected in the Debug View. Selecting a variable 
 will display details in the detail pane below the view. Expanding the 
 list under a variable will display its fields.</p>
<p class="picture"><img src="variables_view.png" alt="Variables View" title="Variables View" style="border: none;" width="338" height="241" border="0"></p>
<p class="Note">Note:</p>
<p class="NoteText">Right-click a variable and select <span style="font-weight: bold;"><b>Watch</b></span> 
 or <span style="font-weight: bold;"><b>Create Watch Expression</b></span> to 
 add the variable to the <a href="expressions_view.htm">Expressions view</a>.</p>
<p class="Strong">Variables View Toolbar Commands</p>
<table cellspacing="0" width="89.975%">
	<col style="width: 8.987%;">
	<col style="width: 24.03%;">
	<col style="width: 66.272%;">
	<tr style="vertical-align: top;">
		<td style="border: Solid 1px #000000; width: 8.987%; padding-right: 10px; 
			 padding-left: 10px;"><p style="font-weight: bold;">Icon</p></td>
		<td style="border-top: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 24.03%; padding-right: 10px; 
			 padding-left: 10px;"><p style="font-weight: bold;">Name</p></td>
		<td style="border-top: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 66.272%; padding-right: 10px; 
			 padding-left: 10px;"><p style="font-weight: bold;">Description</p></td>
	</tr>
	<tr style="vertical-align: top;">
		<td style="border-left: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 8.987%; padding-right: 10px; 
			 padding-left: 10px;"><p><img src="variables_view_show_type_names.png" alt="variables_view_show_type_names.png" style="border: none;" width="25" height="23" border="0"></p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 24.03%; padding-right: 10px; padding-left: 10px;"><p>Show 
		 Type Names</p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 66.272%; padding-right: 10px; padding-left: 10px;"><p>If 
		 selected, type names will be displayed.</p></td>
	</tr>
	<tr style="vertical-align: top;">
		<td style="border-left: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 8.987%; padding-right: 10px; 
			 padding-left: 10px;"><p><img src="variables_view_show_logical_structure.png" alt="variables_view_show_logical_structure.png" style="border: none;" width="23" height="22" border="0"></p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 24.03%; padding-right: 10px; padding-left: 10px;"><p>Show 
		 Logical Structure</p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 66.272%; padding-right: 10px; padding-left: 10px;"><p>Shows 
		 the logical structure.</p></td>
	</tr>
	<tr style="vertical-align: top;">
		<td style="border-left: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 8.987%; padding-right: 10px; 
			 padding-left: 10px;"><p><img src="collapse_all_icon.png" alt="collapse_all_icon.png" style="border: none;" width="24" height="21" border="0"></p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 24.03%; padding-right: 10px; padding-left: 10px;"><p>Collapse 
		 All</p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 66.272%; padding-right: 10px; padding-left: 10px;"><p>Collapses 
		 the list.</p></td>
	</tr>
</table>
<p>&#160;</p>
<p class="Strong">Variables View Menu Commands</p>
<p>The view's menu can be accessed through the view menu icon <img src="menu_icon.png" alt="menu_icon.png" style="border: none;" width="17" height="16" border="0">.</p>
<p>&#160;</p>
<p class="picture" align="left"><img src="variables_view_menu.png" alt="variables_view_menu.png" style="border: none;" width="212" height="102" border="0"></p>
<table cellspacing="0" width="90.583%">
	<col style="width: 12.062%;">
	<col style="width: 87.862%;">
	<tr style="vertical-align: top;">
		<td style="border: Solid 1px #000000; width: 12.062%; padding-right: 10px; 
			 padding-left: 10px;"><p style="font-weight: bold;">Name</p></td>
		<td style="border-top: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 87.862%; padding-right: 10px; 
			 padding-left: 10px;"><p style="font-weight: bold;">Description</p></td>
	</tr>
	<tr style="vertical-align: top;">
		<td style="border-left: Solid 1px #000000; border-right: Solid 1px #000000; 
			 border-bottom: Solid 1px #000000; width: 12.062%; padding-right: 10px; 
			 padding-left: 10px;"><p>Layout</p></td>
		<td style="border-right: Solid 1px #000000; border-bottom: Solid 1px #000000; 
			 width: 87.862%; padding-right: 10px; padding-left: 10px;"><p>Defines 
		 the view's layout:</p>
		<ul type="square">
			<li><p>Vertical View Orientation - The details pane will be 
			 displayed at the bottom of the Variables view.</p></li>
			<li><p>Horizontal View Orientation - The details pane will 
			 be displayed to the right of the Variables view.</p></li>
			<li><p>Variables View Only - Only the Variables view will be 
			 displayed.</p></li>
			<li><p>Show columns - Divide the view into columns.</p></li>
			<li><p>Set Columns - Only available if &quot;Show columns&quot; 
			 is selected. Allows you to choose which of the following columns 
			 to display:</p></li>
			<ul type="disc">
				<li><p>Name</p></li>
				<li><p>Declared Type</p></li>
				<li><p>Value</p></li>
				<li><p>Actual Type</p></li>
			</ul>
		</ul></td>
	</tr>
</table>
<p class="Note">Note:</p>
<p class="NoteText">The Variables View [PHP Debug Perspective] 
 is displayed by default as part of the Debug Perspective. To manually 
 open the view, go to <span style="font-weight: bold;"><b>Window | Show View 
 | Other | Debug | Variables</b></span>.</p>
<table cellspacing="0" width="100%">
	<col style="width: 7.093%;">
	<col style="width: 92.907%;">
	<tr style="vertical-align: top; 
											 height: 16px;">
		<td style="width: 7.093%; padding-right: 10px; 
												 padding-left: 10px;"><p 
			 style="font-size: 6pt;">&#160;</p></td>
		<td style="width: 92.907%; 
												 padding-right: 10px; padding-left: 10px;"><p>&#160;</p></td>
	</tr>
	<tr style="vertical-align: top; 
											 height: 35px;">
		<td style="width: 7.093%; padding-right: 10px; 
												 padding-left: 10px;"><p 
			 style="font-size: 6pt;"><img src="link_icon.png" alt="link_icon.png" style="border: none;" width="32" height="40" border="0"> </p></td>
		<td style="width: 92.907%; 
												 padding-right: 10px; padding-left: 10px;"><p 
			 style="font-weight: bold;">Related Links:</p>
		<p style="font-weight: normal;"><a href="php_debug_perspective.htm"><span 
		 style="font-weight: normal;">PHP Debug Perspective</span> 
		 </a></p>
		<p><a href="debug_view.htm">Debug View</a></p>
		<p><a href="breakpoints_view.htm">Breakpoints View</a></p>
		<p><a href="parameter_stack.htm">Parameter Stack View</a></p>
		<p><a href="debug_output_view.htm">Debug Output View</a></p>
		<p><a href="browser_output_view.htm">Browser Output View</a></p>
		<p class="TableText"><a href="expressions_view.htm">Expressions 
		 View</a></p></td>
	</tr>
	<tr style="vertical-align: top; 
											 height: 19px;">
		<td style="width: 7.093%; padding-right: 10px; 
												 padding-left: 10px;"><p 
			 style="font-size: 6pt;">&#160;</p></td>
		<td style="width: 92.907%; 
												 padding-right: 10px; padding-left: 10px;"><p>&#160;</p></td>
	</tr>
</table>
<div style="width: 100%; position: relative;" id="footer">
	
 <p style="text-decoration: underline; " 
										 align="center">PHP Development 
	 Tools</p>
	
	
</div>
<script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.writeIntopicBar)
	writeIntopicBar(0);

highlightSearch();
//-->
//]]></script>
</body>
</html>
