簡體   English   中英

PHP關聯數組。 使用foreach獲取鍵值對

[英]PHP Associative array. Get key value pair using foreach

我正在嘗試定義一個函數,給定一個關聯數組,該函數將回顯鍵值對,並給出該函數的參數。

到目前為止,我有下面顯示的代碼。 但是,該代碼的結果將是鍵值對的完整列表(表)。 我想要得到的只是一對(一旦調用了函數)。

有人可以幫我嗎?

謝謝!

enter code here

<!DOCTYPE html>
<html>
<head>

<body>

<h1>List of States</h1>

<?php

$states = array ("AL"=>"Alabama","AK"=>"Alaska","AZ"=>"Arizona","AR"=>"Arkansas","CA"=>"California","CO"=>"Colorado","CT"=>"Connecticut",
"DE"=>"Delaware","FL"=>"Florida","GA"=>"Georgia","HI"=>"Hawaii","ID"=>"Idaho","IL"=>"Illinois","IN"=>"Indiana","IA"=>"Iowa","KS"=>"Kansas",
"KY"=>"Kentucky");

function printState($Abbr) {

    global $states;

        echo "<table border=1>";

    foreach($states as $Abbr => $value) {   

        echo "<tr>";
        echo "<td>";
        echo $Abbr;
        echo "</td>";
        echo "<td>";
        echo $value;
        echo "</td>";
        echo "</tr>";

    }

        echo "</table>";

}

printState("CA");


?>

</body>
</html>

如果必須具有功能:

function getState($code) {
    global $states;
    if (array_key_exists($code, $states)) {
        return $states[$code];
    }
    return false;
}

echo getState('GA');

但是正如Dave Chen所建議的那樣, $states[$abbr]; 是你會怎么做的。

嗨,你也可以使用這個

function printState($Abbr) {
    global $states;
if (array_key_exists($Abbr,$states)){   
    return "<table border=1><tr><td>$Abbr</td><td>$states[$Abbr]</td></tr></table>";
    }
}
echo printState("AK");
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM