如何更新变量中的php变量

时间:2018-03-29 16:23:59

标签: php

我有以下代码:

$var1 = 'Hello';
$var2 = $var1.' friend';

在if语句中,如果单击了submit,我想将var1更新为'嗨'所以我期待着你的朋友'作为输出。但它不起作用 - '你好朋友'仍然是输出。我想通过var2调用它。如何更新var1中的var1?

这是我的完整代码:

<?php 
$var1 = 'Hello';
$var2 = $var1.' friend';

if(isset($_POST['submit'])) {
    $var1 = 'Hi';
    echo $var2;

} else{ 
echo '<form method="post" action="'. $_SERVER['PHP_SELF'] .'">
<input type="text" name="name"><br>
<input type="submit" name="submit" value="Submit Form"><br> </form>';
} 
?>

1 个答案:

答案 0 :(得分:2)

不,这不会起作用,你对事物的运作方式有一个错失概念。 $var2 = $var1.' friend';会立即将分配给?? $ var2 ??,而不是后来评估的公式或事物。因此,$var2包含转让时$var1保留的内容。

您要找的是功能

<?php 

function greetWithPhrase($phrase) {
  return $phrase . ' friend';
}

$var1 = 'Hello';

if(isset($_POST['submit'])) {
    $var1 = 'Hi';
    echo greetWithPhrase($var1);    
} else{ 
  echo '<form method="post" action="'. $_SERVER['PHP_SELF'] .'">
  <input type="text" name="name"><br>
  <input type="submit" name="submit" value="Submit Form"><br> </form>';
}