在PHP中,要在數(shù)組中使用selected
,您需要遍歷數(shù)組并根據(jù)特定條件設(shè)置selected
屬性。這通常是根據(jù)數(shù)組中的值與某個(gè)值(例如,表單中用戶(hù)選擇的值)進(jìn)行比較來(lái)完成的。以下是一個(gè)示例:
<?php
// 假設(shè)這是從表單提交的數(shù)據(jù)
$selectedValues = ['apple', 'banana', 'orange'];
// 這是您的原始數(shù)組,包含所有可選項(xiàng)
$options = ['apple' => 'Apple', 'banana' => 'Banana', 'orange' => 'Orange', 'grape' => 'Grape'];
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>PHP Selected in Array Example</title>
</head>
<body>
<form action="" method="post">
<select name="fruits">
<?php foreach ($options as $value => $text): ?>
<?php $selected = in_array($value, $selectedValues) ? 'selected' : ''; ?>
<option value="<?php echo htmlspecialchars($value); ?>" <?php echo $selected; ?>><?php echo htmlspecialchars($text); ?></option>
<?php endforeach; ?>
</select>
<input type="submit" name="submit" value="Submit">
</form>
</body>
</html>
在這個(gè)示例中,我們首先定義了一個(gè)$selectedValues
數(shù)組,其中包含用戶(hù)可能選擇的值。然后,我們創(chuàng)建了一個(gè)包含所有選項(xiàng)的原始數(shù)組$options
。
在<select>
元素中,我們使用foreach
循環(huán)遍歷$options
數(shù)組。對(duì)于每個(gè)選項(xiàng),我們使用in_array()
函數(shù)檢查該值是否存在于$selectedValues
數(shù)組中。如果存在,我們將selected
屬性設(shè)置為該選項(xiàng)。最后,我們使用htmlspecialchars()
函數(shù)確保輸出是安全的。