无法从数组中获取最多2个值

时间:2018-01-06 16:22:09

标签: php arrays

我有以下数组

fgets

我正在尝试获取前两个值,我有以下代码

Array
(
    [0] => zero
    [1] => first
    [2] => second
    [3] => third
)

如果数组中有2个值,那么它可以正常工作但如果数组中只有1个值,那么第2个if条件会抛出错误

任何人都可以告诉我们如何从这种类型的数组中获取前2个值,如果只有1个值那么它不应该抛出任何错误而只显示第一个

5 个答案:

答案 0 :(得分:2)

使用sizeof($array)并检查数组中存在的元素的数量。 如果大小等于1,则终止条件

答案 1 :(得分:1)

您可以使用下面的for loop

来实现这一目标
for($i=0;$i<count($skillArray);$i++){
    echo "<p>".ucwords($skillArray[$i])."</p>";
}

使用for循环,你不需要使用条件,你的代码减少到更少的行数

答案 2 :(得分:1)

如果数组没有足够的项目并且返回的参数不超过2个,则array_slice不会返回任何错误

foreach(array_slice($skillArray, 0,2) as $x) {
    echo "<p>".ucwords($x)."</p>";
};

答案 3 :(得分:0)

使用计数功能确定长度。

if(count($ skillArray)&gt; 1)...

答案 4 :(得分:0)

有几种方法

  1. 需要使用PHP的 isset()方法检查第二个值

  2. 以简单的方式,您可以迭代数组的值,使用count($ yourArray)获取该数组的获取总计数值

  3. 使用sizeof($ array)并检查数组中存在的元素的数量。然后简单地使用foreach循环元素。