php生成随机生成不同的单词,php – 拼字游戏单词生成器

阅读: 评论:0

php生成随机生成不同的单词,php – 拼字游戏单词生成器

php生成随机生成不同的单词,php – 拼字游戏单词生成器

要查找所有可能的有效字,请执行以下步骤

>找到所有可能的组合

>查找组合中每个单词的每个排列

>搜索数据库中的单词

>列出单词

脚本

$tiles = array( "A", "B", "C", "T", "E", "E") ;

$words = array();

$set = powerSet($tiles,2);

$mysql = new mysqli("localhost","root","","word");

$sql = "SELECT id from dic WHERE word = '%s'" ;

foreach ($set as $key => $value)

{

$word = implode("", $value);

$wordPermutation = permute($word);

foreach($wordPermutation as $keyWord)

{

if(!in_array($keyWord, $words))

{

//if($result = $mysql->query(sprintf($sql,$keyWord)))

//{

//var_dump(sprintf($sql,$keyWord));

//if($result->num_rows > 0)

//{

$words[] = $keyWord ;

//}

//}

}

}

}

print_r($words);

功能

function powerSet($in, $minLength = 1, $max = 10) {

$count = count ( $in );

$members = pow ( 2, $count );

$return = array ();

for($i = 0; $i < $members; $i ++) {

$b = sprintf ( "%0" . $count . "b", $i );

$out = array ();

for($j = 0; $j < $count; $j ++) {

if ($b {$j} == '1')

$out [] = $in [$j];

}

if (count ( $out ) >= $minLength && count ( $out ) <= $max) {

$return [] = $out;

}

}

return $return;

}

function permute($str) {

if (strlen($str) < 2) {

return array($str);

}

$permutations = array();

$tail = substr($str, 1);

foreach (permute($tail) as $permutation) {

$length = strlen($permutation);

for ($i = 0; $i <= $length; $i++) {

$permutations[] = substr($permutation, 0, $i) . $str[0] . substr($permutation, $i);

}

}

return $permutations;

}

请注意,我注释了数据库验证部分,以便演示可以工作

见演示

本文发布于:2024-01-29 05:49:51,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170647859613146.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:单词   生成器   游戏   php
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23