有人可以帮助我使用以下代码
if ($scope = '9001') $docref = $rs["9001ref"];
elseif ($scope = '14001') $docref = $rs["14001ref"];
elseif ($scope = '18001') $docref = $rs["18001ref"];
elseif ($scope = '9001,14001') $docref = $rs["914001ref"];
elseif ($scope = '9001,18001') $docref = $rs["918001ref"];
elseif ($scope = '14001,18001') $docref = $rs["1418001ref"];
elseif ($scope = '9001,14001,18001') $docref = $rs["91418001ref"];
我不确定我是否应该使用=或==
并且也不确定我是否应该使用' '或" "
有人可以让我知道并提供一个简短的解释,以便我知道继续,谢谢。
答案 0 :(得分:2)
相比之下,单=
表示您正在为变量赋值。例如。 $scope = '14001'
会将14001
分配给$scope
。要比较某些内容,请使用==
(仅当值相同时)或===
(如果值和类型匹配)。
使用'
与"
基本上是代码风格问题。但是如果你在字符串中使用一些变量,那么"
将解析字符串以检查内部是否有任何变量,而'
将忽略字符串中的任何变量。
E.g:
$scope = '123';
echo "My scope is {$scope}"; // will echo "My scope is 123";
echo 'My scope is {$scope}'; // will echo "My scope is {$scope}";
此外,您可以在$
包裹的字符串中使用以"
开头的任何变量:
echo "Variable {$variable}";
echo "String {$row['someKey']}";
echo "Object {$this->variable}";
echo "Object method that returns value {$this->getValue()}";
答案 1 :(得分:0)
相比之下,必须有==
if ($scope = '9001') $docref = $rs["9001ref"];
elseif ($scope == '14001') $docref = $rs["14001ref"];
elseif ($scope == '18001') $docref = $rs["18001ref"];
elseif ($scope == '9001,14001') $docref = $rs["914001ref"];
elseif ($scope == '9001,18001') $docref = $rs["918001ref"];
elseif ($scope == '14001,18001') $docref = $rs["1418001ref"];
elseif ($scope == '9001,14001,18001') $docref = $rs["91418001ref"];
对于这种情况,更好的解决方案是使用switch
而不是if-elseif
条件。