我尝试制作一个简单的名称生成器。帮助我找出它无法正常工作的原因。我认为这是因为mt_rand函数。对不起,如果问题看起来平庸或无关紧要,我第一次来这里是新编程。这是代码:
<?php
echo 'Ovo je moja verzija Polumenta generatora';
$prvo = 'bcdfghtnjpknmlrjdzdjs';
$drugo = 'aeiou';
$trece = 'bcdfghtnjpknmlrjsdzdj';
$cetvrto = 'uo';
$prvos = mt_rand($prvo[0],$prvo[17]);
$drugos = mt_rand($drugo[0],$drugo[4]);
$treces = mt_rand($trece[0],$trece[17]);
$cetvrtos = mt_rand($cetvrto[0],$cetvrto[1]);
echo $prvos.$drugos.$treces.$cetvrtos.' Polumenta'
?>
答案 0 :(得分:2)
mt_rand将整数作为参数并返回一个整数。您正在尝试传递字符并返回字符。你应该做点什么:
<?php
echo 'Ovo je moja verzija Polumenta generatora';
$prvo = 'bcdfghtnjpknmlrjdzdjs';
$drugo = 'aeiou';
$trece = 'bcdfghtnjpknmlrjsdzdj';
$cetvrto = 'uo';
$prvos = $prvo[mt_rand(0,strlen($prvo) - 1)];
$drugos = $drugo[mt_rand(0,strlen($drugo) - 1)];
$treces = $trece[mt_rand(0,strlen($trece) - 1)];
$cetvrtos = $cetvrto[mt_rand(0,strlen($cetvrto) - 1)];
echo $prvos.$drugos.$treces.$cetvrtos.' Polumenta'
?>
答案 1 :(得分:0)
您可以使用数组和rand()函数以另一种方式创建它。
$(document).ready(function () {
var ranges = $('div.box > input[type=range]'),
table = $('table.table'),
hrow = $('tr:has(th)', table),
orow = $('tr:has(td)', table);
ranges.on('change', function() {
var value = this.value,
label = $(this).prev('label').text().trim(),
column = $.inArray( label, $('th',hrow).map(function(i,v) {
return $(v).text().trim();
}) );
//display the new value
$(this).next('label').text( value );
//hide [remove hightlight] all rows but header
orow.removeClass('highlight');
//show [hightlight] rows with values
orow.filter(function() {
return $('td',this).eq(column).text().trim() == value;
}).addClass('highlight');
}).eq(0).change();
});
比任意长度生成随机的字符序列
$chrs[0] = str_split('bcdfghtnjpknmlrjdzdjs'); // array of consonants
$chrs[1] = str_split('aeiou'); // array of vowels
$length = 8; // nick name length