首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP:在数组创建特定单词之前,以随机顺序输出元素

问PHP:在数组创建特定单词之前,以随机顺序输出元素
EN

Stack Overflow用户
提问于 2016-12-22 03:29:28
回答 3查看 136关注 0票数 0

我希望在PHP中创建一个数组,其中包含4个元素(例如"A“、"l”、"e“、"x"),并在创建单词"Alex”之前,在数组应该停止之前,以随机顺序输出这个字母。所以它应该输出这样的东西: Axel,leAx,xAle,.亚历克斯!我已经了解了如何从数组中输出随机元素,但是它不适用于我的4个元素,我也不知道如何用它创建一个循环。

代码语言:javascript
复制
<?php
$name = array("A","l","e","x");
$rand_keys = array_rand($name, 2);
echo $name[$rand_keys[0]];
echo $name[$rand_keys[1]];
?>

目前它输出了2个随机元素,我被困在这里(

请帮帮忙

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-12-22 09:18:13

使用shuffle重新排列数组中元素的顺序(参见http://php.net/manual/en/function.shuffle.php)。由于这改变了原来的数组,您应该首先创建一个副本。然后使用implode从数组中创建一个字符串(参见http://php.net/manual/en/function.implode.php)。同样的方式,存储所有被洗牌的名称,并使用内爆将它们连接到一个由逗号分隔的字符串。

代码语言:javascript
复制
<?php
$name = array("A","l","e","x");
$name_shuffled = $name;
$list_of_names = array();
do{
    shuffle($name_shuffled);
    $list_of_names[] = implode($name_shuffled);
} while ($name !== $name_shuffled);
echo(implode(', ', $list_of_names));
echo('!');
?>
票数 1
EN

Stack Overflow用户

发布于 2016-12-22 09:18:13

洗牌,嗯..。

代码语言:javascript
复制
<?php 
$name = array("A","l","e","x");   
$copy = $name; 
do{  
shuffle($copy);
print_r($copy);   
}while($name !== $copy);
?> 
票数 1
EN

Stack Overflow用户

发布于 2016-12-26 18:49:35

这对我有用,但对数组不起作用,因为数组对你的工作几乎没有什么影响。看我的主意

​

代码语言:javascript
复制
<html>
 <head>
 </head>
  <body>
   <table align='center' style='width: 100%; height: 30;'>
<tr>
<?php
	ini_set( 'error_reporting', E_ALL );
    ini_set( 'display_errors', true );
include ('data/data.php');

/* Call data from weather database  */
$data = "$WeatherIcon";

/* seperate weather condition icons to number */
if(preg_match('(clear.png)', $data) === 1) { $datatest=0; } 
if(preg_match('(mostlycloudy.png)', $data) === 1) { $datatest=1;  } 
if(preg_match('(partlycloudy.png)', $data) === 1) { echo $datatest=2;  } 
if(preg_match('(rain.png)', $data) === 1) { echo $datatest=3;  } 
if(preg_match('(nt_mostlycloudy.png)', $data) === 1) { $datatest=4;  } 
if(preg_match('(nt_cloudy.png)', $data) === 1) {  $datatest=5;  } 

/* a:{ΔΕΝ Βρέχει =0 ,Βρέχει =1}*/
  if   ($datatest <= 0 && $Rain_Rate <= 0 && $Temp <= 0 && $Temp >= -1) echo "GOOD WEATHER WITH COLD AND SOME ICE"; 
elseif ($datatest <= 0 && $Rain_Rate <= 0 && $Temp >= 0 && $Temp < 5) echo "GOOD WEATHER WITH COLD";
elseif ($datatest <= 0 && $Rain_Rate <= 0 && $Temp >= 5 && $Temp < 10) echo "GOOD WEATHER WITH SOME COLD"; 
elseif ($datatest <= 0 && $Rain_Rate <= 0 && $Temp >= 10 && $Temp < 20) echo "GOOD WEATHER WITH NORMAL TEMP"; 
elseif ($datatest <= 1) echo "GOOD WEATHER WITH MOSTLY CLOUD AND COLD";  
elseif ($datatest <= 2) echo "GOOD WEATHER WITH PARTLY CLOUD AND COLD ";  
elseif ($datatest <= 3) echo "RAINY DAY";  
elseif ($datatest <= 4) echo "<td bgcolor='#99ff99' align='center' style='width: 800px; height: 30;'>NIGHT GOOD WEATHER WITH MOSTLY CLOUD AND COLD</td>";  
elseif ($datatest <= 5) echo "<td bgcolor='#99ff99' align='center' style='width: 800px; height: 30;'>NIGHT CLOUDY WEATHER WITH COLD</td>";  
?>
</tr>	
		</table>
	</body>
</html>

​

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41275366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档