Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.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_For Loop_While Loop - Fatal编程技术网

Php 如何在循环之间添加一些信息?

Php 如何在循环之间添加一些信息?,php,for-loop,while-loop,Php,For Loop,While Loop,我想在ambrose之前添加和,因此最终结果是: mathews,neil,ambrose,glen,ethan 由于您已经在使用计数器$i,您只需执行以下检查: mathews,neil, and ambrose ……或者别的什么。它不必是echo,因为您已经在使用计数器$i,您可以执行以下检查: mathews,neil, and ambrose if ($i === count($data) - 2) { echo ' and '; } ……或者别的什么。它不必是echo

我想在ambrose之前添加
,因此最终结果是:

mathews,neil,ambrose,glen,ethan

由于您已经在使用计数器$i,您只需执行以下检查:

mathews,neil, and ambrose

……或者别的什么。它不必是echo,因为您已经在使用计数器
$i
,您可以执行以下检查:

mathews,neil, and ambrose
if ($i === count($data) - 2) {
    echo ' and ';
}
……或者别的什么。它不必是
echo

if ($i === count($data) - 2) {
    echo ' and ';
}
$data[x]只返回其中一个名称,按顺序存储


$data[x]只返回其中一个名称,这些名称按顺序存储。

您应该避免此类操作的循环,因为它们会给代码增加不必要的复杂性

$data = explode(",", $str);
echo $data[0].", ".$data[1].", and ".$data[2];
还有许多类似的单线变化:

// put the last element of $data to $lastName, and remove the last element from $data
$lastName = array_pop($names);
echo join(',',$names) . ' and ' . $lastName;
但是,对于没有经验的PHP开发人员来说,它们不是很清楚

编辑,如果您愿意放弃示例中已有的阵列,可以这样做

// replace the last ",name" with " and name"
echo preg_replace('/(,)[a-z]+$/', ' and ', join(',', $names));

您应该避免这种操作的循环,因为它们会给代码增加不必要的复杂性

$data = explode(",", $str);
echo $data[0].", ".$data[1].", and ".$data[2];
还有许多类似的单线变化:

// put the last element of $data to $lastName, and remove the last element from $data
$lastName = array_pop($names);
echo join(',',$names) . ' and ' . $lastName;
但是,对于没有经验的PHP开发人员来说,它们不是很清楚

编辑,如果您愿意放弃示例中已有的阵列,可以这样做

// replace the last ",name" with " and name"
echo preg_replace('/(,)[a-z]+$/', ' and ', join(',', $names));


@leon我认为计数是一个接一个,
-1
是最后一个,
-2
是倒数第二个。在我脑海中的模拟PHP循环中,我在倒数第二个循环之后添加了
,而不是倒数第二个循环之前。但是我如何在上面的循环中添加这个呢???@leon我真的不认为你可以,就像你现在这样。看起来您正在将值添加到数组中,然后只是
echo
ing数组。我错了吗?哦,我也这么想,但看起来格斯的想法可以奏效,但我需要从头开始计算。我只想要前三个结果,在第二个结果之后,我需要添加和。请记住,总数据最多可为12或14 itvaries@leon我认为
count
是一个接一个,
-1
是最后一个,
-2
是倒数第二个。在我脑海中的模拟PHP循环中,我在倒数第二个循环之后添加了
,而不是倒数第二个循环之前。但是我如何在上面的循环中添加这个呢???@leon我真的不认为你可以,就像你现在这样。看起来您正在将值添加到数组中,然后只是
echo
ing数组。我错了吗?哦,我也这么想,但看起来格斯的想法可以奏效,但我需要从头开始计算。我只想要前三个结果,在第二个结果之后,我需要添加和。记住,总数据可以高达12或14,它不能仅仅是爆炸<代码> $DAT/CUT>,编辑最后一个包含“和”之前,然后加入“,”?我想他想用他上面的代码作为基础。但是,是的,那将是一个很好的方法。我怎么能从一开始就数数呢?说我只想要最初的三个结果???难道你不能爆炸<代码> $DAT/<代码>,编辑最后一个包含“和”之前,然后加入“?”,我想他想用上面的代码作为基础。但是,是的,那将是一个很好的方法。我怎么能从一开始就数数呢?假设我只想要前三个结果,那么??我同意,但这里我想要前三个名字。在第二个名字后面加上和。在这种情况下,我如何在没有循环的情况下做到这一点?如果你保持循环,你已经有了它,它会给你你想要的3个名字。然后在生成的$names数组中使用上面的任何一个示例。如果您愿意放弃已经提供的代码,您可以执行我的最后一个示例。是的,哇……您如何学习所有这些??学习PHP的最佳方法是什么??我需要如何学好我的是自我学习曲线,因此它有很多缺点。我建议,任何时候你发现自己使用了很多或循环(特别是数组)和if语句,请快速浏览php文档并找到替代方案。PHP附带了足够多的数组和字符串函数,可以轻松替换大部分代码。我建议在youtube上的yahoo和Googledev频道进行一次良好的循环,以获得良好的开发实践。看看设计模式,它们是必须的!我同意,但这里我要前三个名字。在第二个名字后面加上和。在这种情况下,我如何在没有循环的情况下做到这一点?如果你保持循环,你已经有了它,它会给你你想要的3个名字。然后在生成的$names数组中使用上面的任何一个示例。如果您愿意放弃已经提供的代码,您可以执行我的最后一个示例。是的,哇……您如何学习所有这些??学习PHP的最佳方法是什么??我需要如何学好我的是自我学习曲线,因此它有很多缺点。我建议,任何时候你发现自己使用了很多或循环(特别是数组)和if语句,请快速浏览php文档并找到替代方案。PHP附带了足够多的数组和字符串函数,可以轻松替换大部分代码。我建议在youtube上的yahoo和Googledev频道进行一次良好的循环,以获得良好的开发实践。看看设计模式,它们是必须的!