﻿<!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>Setting Breakpoints</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("Tasks\nDebugging Files and Applications\nSetting Breakpoints");
addAvenueInfo("Tasks","running_php_web_pages.htm","locally_debugging_a_php_script.htm");

	}

	document.write("<p style=\"text-align:left\"> ");
AddMasterBreadcrumbs("ide_help.htm", "", "&gt;", "Home", "pdt_table_of_contents.htm");
document.write("<a href=\"tasks.htm\">Tasks<\/a> &gt; <a href=\"debugging.htm\">Debugging Files and Applications<\/a> &gt; Setting Breakpoints<\/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>Setting Breakpoints 
 </h1>
<p>Before you debug your scripts, you can set breakpoints in them to specify 
 places in your code where the debugging process will pause.</p>
<p>&#160;</p>
<p>These procedures demonstrate how to set line and conditional PHP breakpoints.</p>
<table cellspacing="0" width="100%">
	<col style="width: 7.093%;">
	<col style="width: 92.907%;">
	<tr valign="top">
		<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 
			 style="font-weight: bold;">&#160;</p></td>
	</tr>
	<tr valign="top">
		<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p 
			 style="font-size: 6pt;"><img src="ref_icon.png" alt="Instructions on how to complete a procedure" title="Instructions on how to complete a procedure" style="border: none;" width="28" height="33" border="0"></p></td>
		<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p 
			 style="font-weight: bold;">To set a breakpoint in your script:</p>
		<p style="font-weight: normal;">Double-click the vertical ruler 
		 to the left of the line where you want to set the breakpoint -or- 
		 select the line and go to Run | Toggle Breakpoint or press Ctrl+Shift+B.HERE</p></td>
	</tr>
	<tr valign="top">
		<td colspan="2" style="width: 100%; padding-right: 10px; padding-left: 10px;"><p 
			 style="font-weight: normal;">&#160;A blue ball will appear, 
		 indicating that a breakpoint has been set.</p>
		<p class="picture"><img src="breakpoint.png" alt="breakpoint.png" style="border: none;" width="297" height="134" border="0"></p>
		</td>
		
	</tr>
</table>
<table cellspacing="0" width="100%">
	<col style="width: 7.093%;">
	<col style="width: 92.907%;">
	<tr valign="top">
		<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 
			 style="font-weight: bold;">&#160;</p></td>
	</tr>
	<tr valign="top">
		<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p 
			 style="font-size: 6pt;"><img src="ref_icon.png" alt="Instructions on how to complete a procedure" title="Instructions on how to complete a procedure" style="border: none;" width="28" height="33" border="0"></p></td>
		<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p 
			 style="font-weight: bold;">To add a condition to a breakpoint:</p>
		<ol type="1">
			<li class="p" style="margin-left: -20px; font-weight: normal;"><p 
				 style="font-weight: normal;">Right-click the breakpoint 
			 in the vertical marker bar and select Breakpoint Properties...</p></li>
		</ol>
		<p class="picture"><img src="breakpoint_properties_select.png" alt="breakpoint_properties_select.png" style="border: none;" width="204" height="218" border="0"></p>
		
		<p style="margin-left: 40px;">The PHP Conditional Breakpoint dialog 
		 opens.</p>
		<ol start="2" type="1">
			<li class="p" style="margin-left: -20px;"><p style="margin-left: 0px;">Enter 
			 the required condition and ensure the Enable Set Condition 
			 checkbox is marked.</p></li>
		</ol>
		
		<p class="FIgureCaption"><img src="conditional_breakpoint_properties1.png" alt="conditional_breakpoint_properties1.png" style="border: none;" width="452" height="138" border="0"></p>
		
		<ol start="3" type="1">
			<li class="p" style="margin-left: -20px;"><p>Click OK.</p></li>
		</ol></td>
	</tr>
	<tr valign="top">
		<td colspan="2" style="width: 100%; padding-right: 10px; padding-left: 10px;"><p>The 
		 condition will be set for the breakpoint and the debugging process 
		 will pause only if the condition is met.</p>
		<p>The breakpoint will be represented by a blue ball with a question 
		 mark.</p>
		<p class="picture"><img src="conditional_breakpoint.png" alt="conditional_breakpoint.png" style="border: none;" width="278" height="80" border="0"></p>
		</td>
		
	</tr>
</table>
<table cellspacing="0" width="100%">
	<col style="width: 7.093%;">
	<col style="width: 92.907%;">
	<tr style="height: 16px;" valign="top">
		<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="height: 35px;" valign="top">
		<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><span 
		 style="font-weight: bold;"><b>Related Links:</b></span><a href="breakpoints.htm"><br>
		Breakpoints</a></p>
		<p><a href="breakpoints_view.htm">Breakpoints View</a></p>
		<p><a href="debugging_concept.htm">Debugging</a></p>
		<p><a href="analyzing_debugger_results.htm">Running and Analyzing 
		 Debugger Results</a></p></td>
	</tr>
	<tr style="height: 19px;" valign="top">
		<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>
