Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP字符串!=变量=';字符串';_Php_Html - Fatal编程技术网

PHP字符串!=变量=';字符串';

PHP字符串!=变量=';字符串';,php,html,Php,Html,不知道如何命名这个问题,但我正在寻找反馈,为什么当我将变量设置为某个字符串时,它不允许我在函数中调用该变量。。。例如: $name = "name"; $quote_name = "'".$name."'"; //echo of $name = name //echo of $quote_name = 'name' PHP不允许我调用: if($value['name'] == $quote_name){...} 或 但它允许我调用(整个函数): 为什么PHP允许我调用字符串而不是变量?

不知道如何命名这个问题,但我正在寻找反馈,为什么当我将变量设置为某个字符串时,它不允许我在函数中调用该变量。。。例如:

$name = "name";
$quote_name = "'".$name."'";

//echo of $name = name
//echo of $quote_name = 'name'
PHP不允许我调用:

if($value['name'] == $quote_name){...}

但它允许我调用(整个函数):

为什么PHP允许我调用字符串而不是变量?
是否有一种方法可以声明变量而不是实际字符串?

删除第二个变量中的引号,如下所示:

$name = "name";
$quote_name = $name;

if($value['name'] == $quote_name){...}
假设

$value['name'] = 'abcd';
$name = 'abcd';
$quot_name = " ' ".$name." ' ";//(as you entered).
现在,如果您回显
$quot\u name
它将返回'abcd'(带引号),如果您回显
$value['name']
它将返回abcd(不带引号)


因此,
$quot\u name
应该是
$name
(不带引号),或者你也应该给
$value['name']
加上引号。

因为
'name'
不等于
name
$quote\u name=“'$name.”-为什么不直接做
$quote\u name=$name
并在SQL中引用它,我觉得您希望将其用于SQL<代码>“$name.”
用于此<代码>。。。值(““$name.”)或
。。。值(““$quote_name.”)
取决于要用作变量的内容。不要试图重新发明轮子。你是否有错误,或者你的
if
计算结果是否为
true
。(顺便说一句,如果你的
计算结果不符合
true
…)“不清楚你在问什么”-是以鼻子开头的。什么是设置
$value['name']
?我不明白需要创建第二个具有相同值的变量。为什么不干脆
如果($value['name']==$name){…}
?@stackoverflow
$value['name']
的var_dump()是什么?@JonathanKuhn用另一个函数处理变量,例如
$name = "name";
$quote_name = $name;

if($value['name'] == $quote_name){...}
$value['name'] = 'abcd';
$name = 'abcd';
$quot_name = " ' ".$name." ' ";//(as you entered).