选择的选项:本周,php

时间:2017-05-16 08:15:24

标签: php html

我有本周和其他6周的下拉菜单 这是我的PHP代码:

$Timestamp = strtotime('this week');
$output1 = [];
$output2 = [];
$output = [];

for ($week = 3; $week > 0; $week--)
{
$output1[] = date('W Y', strtotime(sprintf('-%d weeks', $week), 
$Timestamp));
}

for ($week = 0; $week < 4; $week++) 
{ 
$output2[] = date('W Y', strtotime(sprintf('+%d weeks', $week), 
$Timestamp));
}

$output = array_merge($output1, $output2);

我有这个html(php)代码:

<select name="weeks">
<?php foreach ($output as $week) : ?>
    <option value="<?php echo $week ?>">
    <?php echo 'Week ' . $week ?></option>
<?php endforeach; ?>
</select>

上面这段代码很完美。

我想要的是赋予属性“选中”。所以当我打开页面时,我会看到我面前的那个星期。 所以这就是我尝试过的,我将我的html(php)代码更改为:

<select name="weeks">
<?php foreach ($output as $week) : ?>
    <option value="<?php echo $week ?>"
    <?php 
    $weekToday = date('W');
    if ($week = $weekToday) 
    {
        echo 'selected';
    }
    ?>>
    <?php echo 'Week ' . $week ?></option>
<?php endforeach; ?>
</select>

当我运行此代码时,它为我提供了仅选择第20周(本周)的选项。但是价值的输出是好的 我做错了什么,我需要改变什么以获得正确的输出?

1 个答案:

答案 0 :(得分:0)

问题在于:

if ($week = $weekToday) 
{
    echo 'selected';
}

可以使用==而不是=

进行比较
相关问题