<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>動態語言關於參數宣告的寫作風格</title>
<link>http://blog.roodo.com/rocksaying/archives/2642460.html/</link>
<description><![CDATA[
tokimeki 日前回應的文章中提到 然後在函數內作過濾參數動作 ，讓我想起在不同程式語言對參數宣告一事有著不同的寫作風格。我就從參數宣告的寫作風格中，展現一下不同程式語言的各種風貌吧。

]]>
	</description>
<language>zh-tw</language>
<generator>Roodo Blog System</generator>
<copyright>All Rights Reserved</copyright>
<atom:link href="http://blog.roodo.com/rocksaying/archives/2642460-comment.xml" rel="self" type="application/rss+xml" />
<item>
	<title>回應：動態語言關於參數宣告的寫作風格</title>
	<description><![CDATA[很同意你的看法。
本來同一種技巧就不見得適用每一種程式語言，不過我上次說的「在函數內作過濾參數動作」，其實有一句但書沒講，那就是我個人在設計函數時，習慣用關聯陣列來傳遞參數，而且通常會假設每個參數都有預設值。

因為在PHP中可以傳遞參照的關係，所以我把這個動作寫成一個函數：

function 陣列：過濾(&$陣列, &$預設 = array()){
	return array_intersect_key($陣列 + $預設, $預設);
}

所以我只要在函數內設定一個預設陣列，然後把參數陣列以及預設陣列丟進去處理就行了，傳回來就得到過濾好的參數陣列，而且保證每個參數都有值。

接下來就可以對每個參數作驗證、運算等動作。]]>
	</description>
	<link>http://blog.roodo.com/rocksaying/archives/2642460.html</link>
	<guid>http://blog.roodo.com/rocksaying/archives/2642460.html#comment-3842558</guid>
	<author>HACGIS@gmail.com(tokimeki)</author>	<category>文章回應</category>
	<pubDate>Sat, 13 Jan 2007 19:58:29 +0800</pubDate>
</item>
</channel>
</rss>