If your site architecture is contained in a database (like a CMS) you can do something like Darkyo suggested.
However there are easier methods. There are many free services which crawl your site and create a sitemap
http://www.xml-sitemaps.com/ or http://sitemapdoc.com/ are some examples but the Internet is full of them. Just google "sitemap creator".
If you want to create your own script there is program called "php sitemap ng" at http://enarion.net/google/phpsitemapng . This can be a real good starting place.