Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.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_Arrays - Fatal编程技术网

如何在PHP中打印一个';是数组的一个元素,如果是',则是整个变量;它不是数组

如何在PHP中打印一个';是数组的一个元素,如果是',则是整个变量;它不是数组,php,arrays,Php,Arrays,假设我有$exampleVariable,我想打印它$exampleVariable可能是一个数组,在这种情况下,我设置它以获得正确的数组元素,然后可以使用print$exampleVariable[$I]打印它 if ($_GET) { $i = array_search($_GET["exampleQueryString"], $exampleVariable); } elseif (is_array($exampleVariable)) { $i = 0; } else {

假设我有$exampleVariable,我想打印它$exampleVariable可能是一个数组,在这种情况下,我设置它以获得正确的数组元素,然后可以使用
print$exampleVariable[$I]
打印它

if ($_GET) {
    $i = array_search($_GET["exampleQueryString"], $exampleVariable);
} elseif (is_array($exampleVariable)) {
    $i = 0;
} else {
    $i = "";
}
我的问题是最后一个
else
,如果$exampleVariable不是数组,因为我得到的
print$exampleVariable[]
不起作用。那么,有什么东西可以作为$I来打印整个变量吗

或者,我考虑将括号包含在$I中,因此我将使用例如
$I=[0],但在这种情况下,我不知道如何打印它<代码>$exampleVariable$i
肯定不起作用

除了$exampleVariable之外,我还需要打印很多变量,所有变量都使用相同的$I或缺少$I,所以我不想做任何冗长的工作来分别设置它们


这听起来比我感觉的要复杂得多,所以希望它有意义

你总是可以做一件漂亮的事情,叫做类型转换。这意味着,通过在变量名称前面加上
(array)
,始终可以使变量成为数组,即使它不是:

因此,您根本不需要三个
if
分支:

if ($_GET) { 
    $i = array_search($_GET["exampleQueryString"], $exampleVariable);
} else {
    $i = 0;
    $exampleVariable = (array)$exampleVariable;
}

你总是可以做一件漂亮的事情,叫做类型转换。这意味着,通过在变量名称前面加上
(array)
,始终可以使变量成为数组,即使它不是:

因此,您根本不需要三个
if
分支:

if ($_GET) { 
    $i = array_search($_GET["exampleQueryString"], $exampleVariable);
} else {
    $i = 0;
    $exampleVariable = (array)$exampleVariable;
}
您可以应用
(数组)
强制转换,如果目标已经是数组,则该转换无效:

$i = array_search($_GET["exampleQueryString"], (array)$exampleVariable);
您可以应用
(数组)
强制转换,如果目标已经是数组,则该转换无效:

$i = array_search($_GET["exampleQueryString"], (array)$exampleVariable);

在结尾处的右括号中键入:
(数组($exampleVariable;
在结尾处的右括号中键入:
(数组($exampleVariable;
为什么变量是数组或字符串存在歧义?我建议清理数据并将其转换为一致的结构。然后,也只有在那时,才将其输出给用户。如果发现大量类型检查都是代码味道。为什么变量是数组或字符串存在歧义我建议对数据进行清理并将其转换为一致的结构。然后,也只有在那时,才将其输出给用户。如果发现大量类型检查都是代码味道,请执行。