我正在尝试创建一个包含变量的PHP函数,该变量将检查变量值,如果它与另一个变量匹配则更改它。 我确定我做错了,但是......
这是我到目前为止所拥有的:
<?php
function Clear_Value(){
$val='NONE';
if(this== $val){ this=='';}
};
$one = 'One';
$two = 'Two';
$three = 'NONE';
$four = 'Four';
Clear_Value($one);
Clear_Value($two);
Clear_Value($three);
Clear_Value($four);
echo $one.'<br>';
echo $two.'<br>';
echo $three.'<br>';
echo $four.'<br>';
?>
我想要的输出是:
One
Two
Four
我希望这很清楚。我还在学习php中的函数,所以任何指针都会很棒。
由于
答案 0 :(得分:3)
您需要通过引用传递参数:
function Clear_Value(&$arg){
if ($arg == 'NONE') $arg = '';
}
这样,函数可以修改变量的内容。
答案 1 :(得分:1)
你的这个代表什么?
你必须在你的函数中创建一些输入变量并使用&amp; 前缀(指内存中的变量)
function Clear_Value(&$var){
$val='NONE';
if($var == $val)
$var = '';
};
另一件事,如果你想改变一个变量的值,你只需使用单个“=”。我建议你在php.net上看到语法基础
抱歉我的英文
答案 2 :(得分:1)
我不确定你在这里的期望。
但是当你执行这个程序时,它会显示未定义的变量错误。
尝试我的示例更改代码: -
<?php
function Clear_Value($sam){
$val='NONE';
if($sam== $val){ $sam=='';}
echo $sam.'<br>';
};
$one = 'One';
$two = 'Two';
$three = 'NONE';
$four = 'Four';
Clear_Value($one);
Clear_Value($two);
Clear_Value($three);
Clear_Value($four);
/*
echo $one.'<br>';
echo $two.'<br>';
echo $three.'<br>';
echo $four.'<br>';
*/
?>