foreach() 和 this問題

edited 十月 2013 in PHP新手區
if(is_array($HTTP_POST_VARS))
{
    foreach($HTTP_POST_VARS as $key=>$value)
	{
        if(is_array($HTTP_POST_VARS[$key]))
		{
            foreach($HTTP_POST_VARS[$key] as $key2 => $value2)
			{
                $fVar[$key][$key2] = $value2;
            }
        }
		else
		{
            $fVar[$key] = $value;
        }
    }
}

以上的代碼具體是有什麼作用的?我自己看不太懂

還有就是$this->這樣是什麼意思?用了$this->的好處是什麼?

原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=4382

評論

  • edited 八月 2009
    嗯..我也看不懂這種神碼...那樣做有什麼用?
    把一個陣列拆開組合成一個新陣列?這完全等效於$fVar=$HTTP_POST_VARS;
    $this是類別(class)中呼自身類別內的變數或函數用

  • 280280
    edited 八月 2009
    基本上他就是讀入所有 POST 的陣列值
    再判斷他是否有二維陣列的內容
    然後依照原 POST 的陣列組成狀態
    重新組成一個新的 $fVar 的陣列

    確實如 SoltyRain 大所說的
    等效於 $fVar=$HTTP_POST_VARS;

    我在猜想這有可能是 framework 的架構寫法

    有兩種作用與需求會這樣寫

    1.如果要對 POST 的值做特殊處理時
    例如:要做隱碼攻擊的處理

    2.如果 PHP 改朝換代時
    例如:以往 PHP 對 POST 的語法是 $HTTP_POST_VARS
    但現在的 PHP 對 POST 的語法是 $_POST

    因為後續程式的使用都是用 $fVar
    所以猜測應該是一種 framework 的寫法需求
Sign In or Register to comment.