<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Do Know Evil - A Blog by Tyler Mulligan &#187; Microsoft</title>
	<atom:link href="http://www.doknowevil.net/category/computers/software/microsoft/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.doknowevil.net</link>
	<description>Tips and Tricks About Computers, Web Development, Linux, the Internet and the Like</description>
	<lastBuildDate>Thu, 29 Jul 2010 03:37:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>List the contents of a zip file</title>
		<link>http://www.doknowevil.net/2008/01/03/list-the-contents-of-a-zip-file/</link>
		<comments>http://www.doknowevil.net/2008/01/03/list-the-contents-of-a-zip-file/#comments</comments>
		<pubDate>Thu, 03 Jan 2008 15:23:09 +0000</pubDate>
		<dc:creator>Tyler Mulligan</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Organization]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[zip]]></category>

		<guid isPermaLink="false">http://www.doknowevil.net/2008/01/03/list-the-contents-of-a-zip-file/</guid>
		<description><![CDATA[I post a lot of zip files on forums to trade information with my fellow gamers, programmers, internetards and what have you. As such, I like to tell them what the zip contains. Now the title of this post is a bit of a misnomer as I haven&#8217;t really created the zip yet&#8230; but I]]></description>
			<content:encoded><![CDATA[<p>I post a lot of zip files on forums to trade information with my fellow gamers, programmers, internetards and what have you.  As such, I like to tell them what the zip contains.  Now the title of this post is a bit of a misnomer as I haven&#8217;t really created the zip yet&#8230; but I figured it would be just as helpful.  The only extra step you would have in doing an actual zip file would be to extract the files to a folder but enough of the intro, lets dive in.</p>
<p><b>Step one</b>: Have a folder with the files you want to list</p>
<p><a href='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents.png' rel='shadowbox[post-187];player=img;' title='Folder with files'><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents.thumbnail.png' alt='Folder with files' /></a><br />
(Whats with your image icons d00d? My images are associated with irfanview)</p>
<p><b>Step two</b>: Open the Command prompt.</p>
<p>Do this by going to <b>start</b> -> <b>Run&#8230;</b> and typing in &#8220;<b>cmd</b>&#8221;</p>
<p><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_1.png' alt='cmd' /></p>
<p><b>Step three</b>: Navigate to your folder with &#8220;<b>cd</b>&#8221; (change directory) and list the files without any attributes using &#8220;<b>dir /b</b>&#8221;</p>
<p><a href='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_2.png' rel='shadowbox[post-187];player=img;' title='Change directory'><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_2.thumbnail.png' alt='Change directory' /></a></p>
<p><b>Step four</b>: Right click anywhere in the black and choose, &#8220;<b>Mark</b>&#8220;, this allows you to highlight the outputted text.</p>
<p><a href='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_3.png' rel='shadowbox[post-187];player=img;' title='cmd - Mark'><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_3.thumbnail.png' alt='cmd - Mark' /></a></p>
<p>Highlight your filelist</p>
<p><a href='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_4.png' rel='shadowbox[post-187];player=img;' title='Highlighted Text'><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_4.thumbnail.png' alt='Highlighted Text' /></a></p>
<p>When you right click again, the text is copied to your clipboard and you can paste it anywhere you&#8217;d like</p>
<p><img src='http://www.doknowevil.net/wp-content/uploads/2008/01/zip_contents_5.png' alt='Paste the text' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.doknowevil.net/2008/01/03/list-the-contents-of-a-zip-file/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>NO to the Microsoft Office format as an ISO standard</title>
		<link>http://www.doknowevil.net/2007/12/16/no-to-the-microsoft-office-format-as-an-iso-standard/</link>
		<comments>http://www.doknowevil.net/2007/12/16/no-to-the-microsoft-office-format-as-an-iso-standard/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 17:08:31 +0000</pubDate>
		<dc:creator>Tyler Mulligan</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.doknowevil.net/2007/12/16/no-to-the-microsoft-office-format-as-an-iso-standard/</guid>
		<description><![CDATA[I ask the national members of ISO to vote &#8220;NO&#8221; in the ballot of ISO DIS 29500 (Office OpenXML or OOXML format) for the following reasons: 1. There is already a standard ISO26300 named Open Document Format (ODF): a dual standard adds costs, uncertainty and confusion to industry, government and citizens; 2. There is no]]></description>
			<content:encoded><![CDATA[<blockquote><p>
I ask the national members of ISO to vote &#8220;NO&#8221; in the ballot of ISO DIS 29500 (Office OpenXML or OOXML format) for the following reasons:</p>
<p>   1. There is already a standard ISO26300 named Open Document Format (ODF): a dual standard adds costs, uncertainty and confusion to industry, government and citizens;<br />
   2. There is no provable implementation of the OOXML specification: Microsoft Office 2007 produces a special version of OOXML, not a file format which complies with the OOXML specification;<br />
   3. There is information missing from the specification document, for example how to do a autoSpaceLikeWord95 or useWord97LineBreakRules;<br />
   4. More than 10% of the examples mentioned in the proposed standard do not validate as XML;<br />
   5. There is no guarantee that anybody can write software that fully or partially implements the OOXML specification without being liable to patent lawsuits or patent license fees by Microsoft;<br />
   6. This format conflicts with existing ISO standards, such as ISO 8601 (Representation of dates and times), ISO 639 (Codes for the Representation of Names and Languages) or ISO/IEC 10118-3 (cryptographic hash);<br />
   7. There is a bug in the spreadsheet file format which forbids any date before the year 1900: such bugs affect the OOXML specification as well as software applications like Microsoft Excel 2000, XP, 2003 and 2007.<br />
   8. This standard proposal was not created by bringing together the experience and expertise of all interested parties (such as the producers, sellers, buyers, users and regulators), but by Microsoft alone.
</p></blockquote>
<p><a href="http://www.noooxml.org/petition" target="_blank">Sign the petition here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.doknowevil.net/2007/12/16/no-to-the-microsoft-office-format-as-an-iso-standard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using PHP to Make Excel Easier</title>
		<link>http://www.doknowevil.net/2007/05/12/using-php-to-make-excel-easier/</link>
		<comments>http://www.doknowevil.net/2007/05/12/using-php-to-make-excel-easier/#comments</comments>
		<pubDate>Sat, 12 May 2007 15:38:39 +0000</pubDate>
		<dc:creator>Tyler Mulligan</dc:creator>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://www.doknowevil.net/?p=12</guid>
		<description><![CDATA[Recently, I was presented with the task of counting the number times filenames repeated in an excel document. Being a 16,000+ row file, with well over 500 unique filenames, there was no simple solution in excel. Having some experience exporting excel documents using PHP, I knew importing them wouldn’t be too hard. A few google]]></description>
			<content:encoded><![CDATA[<p>Recently, I was presented with the task of counting the number times filenames repeated in an excel document.  Being a 16,000+ row file, with well over 500 unique filenames, there was no simple solution in excel.</p>
<p>Having some experience exporting excel documents using PHP, I knew importing them wouldn’t be too hard.  A few google searches later and I came across <a href="http://sourceforge.net/projects/xlreader" target="_blank">Excel Reader</a> which fit the bill perfectly.</p>
<p>After sorting my excel document by filename, I created a loop in PHP that would read the first filename, count the number of times it repeated until it changed, then append that data to a string that would be exported to a new excel document once it was done reading the data.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;color: #ccc; font: 12px Consolas, Lucida Console, Monaco, monospace;"><span class="co1">// Starting at 2 to skip the headers | +1 so it compares the last row</span>
<span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span> <span class="sy0">=</span> <span class="nu0">2</span><span class="sy0">;</span> <span class="re0">$i</span> <span class="sy0">&lt;=</span> <span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'numRows'</span><span class="br0">&#93;</span><span class="sy0">+</span><span class="nu0">1</span><span class="sy0">;</span> <span class="re0">$i</span><span class="sy0">++</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
	<span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">==</span><span class="re0">$curFileName</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<span class="re0">$curFileCount</span><span class="sy0">++;</span>
	<span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span>
		<span class="co1">// Output the data line:</span>
<span class="st0">&quot;Device&quot;</span><span class="sy0">,</span><span class="st0">&quot;User&quot;</span><span class="sy0">,</span><span class="st0">&quot;Filename&quot;</span><span class="sy0">,</span><span class="st0">&quot;Filecount&quot;</span>
		<span class="re0">$stringData</span> <span class="sy0">=</span>
<span class="st0">&quot;<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span>
<span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$curFileCount</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span><span class="es1">\
</span>n&quot;</span><span class="sy0">;</span>
		<a href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$fh</span><span class="sy0">,</span> <span class="re0">$stringData</span><span class="br0">&#41;</span><span class="sy0">;</span>
&nbsp;
		<span class="co1">// Reset the count and update the curFileName</span>
		<span class="re0">$curFileName</span> <span class="sy0">=</span> <span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">;</span>
		<span class="re0">$curFileCount</span><span class="sy0">=</span><span class="nu0">1</span><span class="sy0">;</span>
	<span class="br0">&#125;</span>
	<span class="kw1">echo</span> <span class="st0">&quot;Row: &quot;</span><span class="sy0">.</span><span class="re0">$i</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>Of course&#8230; I didn&#8217;t have just one of these files but 6 and manually entering each filename would be a waste of my time.  My software solution for this was to create an &#8220;Input&#8221; and &#8220;Output&#8221; folder and have PHP cycle through the &#8220;Input&#8221; folder.</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;color: #ccc; font: 12px Consolas, Lucida Console, Monaco, monospace;"><span class="co1">// For every file in the dir &quot;Input&quot;, generate a report</span>
<span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$handle</span> <span class="sy0">=</span> <a href="http://www.php.net/opendir"><span class="kw3">opendir</span></a><span class="br0">&#40;</span><span class="st_h">'Input'</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
	<span class="kw1">while</span> <span class="br0">&#40;</span><span class="kw4">false</span> <span class="sy0">!==</span> <span class="br0">&#40;</span><span class="re0">$orgFileName</span> <span class="sy0">=</span> <a href="http://www.php.net/readdir"><span class="kw3">readdir</span></a><span class="br0">&#40;</span><span class="re0">$handle</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$orgFileName</span> <span class="sy0">!=</span> <span class="st_h">'..'</span> <span class="sy0">&amp;&amp;</span> <span class="re0">$orgFileName</span> <span class="sy0">!=</span> <span class="st_h">'.'</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
&nbsp;
			<span class="co1">// Echo the file we're reading, then read that file</span>
			<span class="kw1">echo</span> <span class="re0">$orgFileName</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span>
			<span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">read</span><span class="br0">&#40;</span><span class="st0">&quot;Input/&quot;</span><span class="sy0">.</span><span class="re0">$orgFileName</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div></div>

<p>Eventually it all came together as such:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;color: #ccc; font: 12px Consolas, Lucida Console, Monaco, monospace;"><span class="kw2">&lt;?php</span>
&nbsp;
<span class="co1">// Don't change any of this</span>
<span class="kw1">require_once</span> <span class="st_h">'Excel/reader.php'</span><span class="sy0">;</span>
<span class="re0">$data</span> <span class="sy0">=</span> <span class="kw2">new</span> Spreadsheet_Excel_Reader<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span>
<span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">setOutputEncoding</span><span class="br0">&#40;</span><span class="st_h">'CP1251'</span><span class="br0">&#41;</span><span class="sy0">;</span>
&nbsp;
<span class="co1">// For every file in the dir &quot;Input&quot;, generate a report</span>
<span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$handle</span> <span class="sy0">=</span> <a href="http://www.php.net/opendir"><span class="kw3">opendir</span></a><span class="br0">&#40;</span><span class="st_h">'Input'</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
	<span class="kw1">while</span> <span class="br0">&#40;</span><span class="kw4">false</span> <span class="sy0">!==</span> <span class="br0">&#40;</span><span class="re0">$orgFileName</span> <span class="sy0">=</span> <a href="http://www.php.net/readdir"><span class="kw3">readdir</span></a><span class="br0">&#40;</span><span class="re0">$handle</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
		<span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$orgFileName</span> <span class="sy0">!=</span> <span class="st_h">'..'</span> <span class="sy0">&amp;&amp;</span> <span class="re0">$orgFileName</span> <span class="sy0">!=</span> <span class="st_h">'.'</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
&nbsp;
			<span class="co1">// Echo the file we're reading</span>
			<span class="kw1">echo</span> <span class="re0">$orgFileName</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span>
			<span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">read</span><span class="br0">&#40;</span><span class="st0">&quot;Input/&quot;</span><span class="sy0">.</span><span class="re0">$orgFileName</span><span class="br0">&#41;</span><span class="sy0">;</span>
&nbsp;
			<span class="co1">// Set the first filename to compare</span>
			<span class="re0">$curFileName</span> <span class="sy0">=</span>
<span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">==</span><span class="re0">$curFileName</span><span class="sy0">;</span>
			<span class="re0">$curFileCount</span> <span class="sy0">=</span> <span class="nu0">0</span><span class="sy0">;</span>
&nbsp;
			<span class="co1">// Create a file and open it for writing</span>
			<span class="re0">$myFile</span> <span class="sy0">=</span>
<span class="st0">&quot;Output/File_Count-&quot;</span><span class="sy0">.</span><a href="http://www.php.net/str_replace"><span class="kw3">str_replace</span></a><span class="br0">&#40;</span><span class="st0">&quot;.xls&quot;</span><span class="sy0">,</span><span class="st0">&quot;.csv&quot;</span><span class="sy0">,</span><span class="re0">$orgFileName</span><span class="br0">&#41;</span><span class="sy0">;</span>
			<span class="re0">$fh</span> <span class="sy0">=</span> <a href="http://www.php.net/fopen"><span class="kw3">fopen</span></a><span class="br0">&#40;</span><span class="re0">$myFile</span><span class="sy0">,</span> <span class="st_h">'w'</span><span class="br0">&#41;</span> or <a href="http://www.php.net/die"><span class="kw3">die</span></a><span class="br0">&#40;</span><span class="st0">&quot;can't open file&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span>
&nbsp;
			<span class="co1">// Starting at 2 to skip the headers | +1 so it</span>
compares the last row
			<span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span> <span class="sy0">=</span> <span class="nu0">2</span><span class="sy0">;</span> <span class="re0">$i</span> <span class="sy0">&lt;=</span> <span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'numRows'</span><span class="br0">&#93;</span><span class="sy0">+</span><span class="nu0">1</span><span class="sy0">;</span>
<span class="re0">$i</span><span class="sy0">++</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
				<span class="kw1">if</span>
<span class="br0">&#40;</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">==</span><span class="re0">$curFileName</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
					<span class="re0">$curFileCount</span><span class="sy0">++;</span>
				<span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span>
					<span class="co1">// Output the data line:</span>
<span class="st0">&quot;Device&quot;</span><span class="sy0">,</span><span class="st0">&quot;User&quot;</span><span class="sy0">,</span><span class="st0">&quot;Filename&quot;</span><span class="sy0">,</span><span class="st0">&quot;Filecount&quot;</span>
					<span class="re0">$stringData</span> <span class="sy0">=</span>
<span class="st0">&quot;<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span>
<span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="sy0">-</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span>,<span class="es1">\&quot;</span>&quot;</span><span class="sy0">.</span><span class="re0">$curFileCount</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\&quot;</span><span class="es1">\
</span>n&quot;</span><span class="sy0">;</span>
					<a href="http://www.php.net/fwrite"><span class="kw3">fwrite</span></a><span class="br0">&#40;</span><span class="re0">$fh</span><span class="sy0">,</span> <span class="re0">$stringData</span><span class="br0">&#41;</span><span class="sy0">;</span>
&nbsp;
					<span class="co1">// Reset the count and update the</span>
curFileName
					<span class="re0">$curFileName</span> <span class="sy0">=</span>
<span class="re0">$data</span><span class="sy0">-&gt;</span><span class="me1">sheets</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="st_h">'cells'</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="sy0">;</span>
					<span class="re0">$curFileCount</span><span class="sy0">=</span><span class="nu0">1</span><span class="sy0">;</span>
				<span class="br0">&#125;</span>
				<span class="kw1">echo</span> <span class="st0">&quot;Row: &quot;</span><span class="sy0">.</span><span class="re0">$i</span><span class="sy0">.</span><span class="st0">&quot;<span class="es1">\n</span>&quot;</span><span class="sy0">;</span>
			<span class="br0">&#125;</span>
			<span class="co1">// Close file</span>
			<a href="http://www.php.net/fclose"><span class="kw3">fclose</span></a><span class="br0">&#40;</span><span class="re0">$fh</span><span class="br0">&#41;</span><span class="sy0">;</span>
		<span class="br0">&#125;</span>
	<span class="br0">&#125;</span>
<span class="br0">&#125;</span>
<span class="sy1">?&gt;</span></pre></div></div>

<p>My apologies for the less than perfect code, I was on a deadline and perfect code wasn&#8217;t a requirement <img src='http://www.doknowevil.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Here are some screenshots of the script in action.</p>
<p><a href="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-11.png" rel="shadowbox[post-12];player=img;" title="PHP Excel File Count - Screenshot 1"><img src="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-11.png" alt="PHP Excel File Count - Screenshot 1" border="0" width="50%" height="50%" /></a></p>
<p><a href="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-21.png" rel="shadowbox[post-12];player=img;" title="PHP Excel File Count - Screenshot 2"><img src="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-21.png" alt="PHP Excel File Count - Screenshot 2" border="0" width="50%" height="50%" /></a></p>
<p><a href="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-31.png" rel="shadowbox[post-12];player=img;" title="PHP Excel File Count - Screenshot 3"><img src="http://www.doknowevil.net/wp-content/uploads/2007/05/php_filecount-31.png" alt="PHP Excel File Count - Screenshot 3" border="0" /></a></p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.doknowevil.net/2007/05/12/using-php-to-make-excel-easier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
