在大量帮助下,我创建了一个脚本,可以在我的 VPS 上编辑文件。它一直工作得很好,但我有一个问题让我完全难过。当我需要将文件中的值调整为 0 时,它将不起作用。value="3"
除了 0 ( ) 之外,几乎任何其他值都可以使用(即value="0"
)。我很困惑。我需要让脚本将 color= 值更改为color=0
我不知道为什么 0 不起作用,但任何其他数字或字母都可以。这是我的代码:
<?php
//Color
$color = explode("=", trim($contents[1]));
if(isset($_REQUEST['difficulty_choice'])){
exec('sed -i '.escapeshellarg('s/color=.*/color='.$_REQUEST['color_choice'].'/g')." /home/user/color.props");
echo 'Color choice has been updated';
}
?>
<?php echo $contents[1]; //Color ?>
<form method="get" action="update.php">
<select name="color_choice">;
<option value="0" <?php if($color[1] == '0'){?>selected="selected"<?php }?>>Red</option>;
<option value="1" <?php if($color[1] == '1'){?>selected="selected"<?php }?>>Blue</option>;
<option value="2" <?php if($color[1] == '2'){?>selected="selected"<?php }?>>Black</option>;
<option value="3" <?php if($color[1] == '3'){?>selected="selected"<?php }?>>Yellow</option>;
</select>
<input type="submit" name="Submit" value="Submit" />
</form>
文件内容:
# The color file
color=1
更新:我用 isset 切换了 !empty 并且它有效!