我使用的是PHP,我有一个后端表单,用户必须使用
我有一个后端表单,用户必须使用centurion字母(如ARESTU)输入字母。我已经把这个词发布到了PHP生活中,并使用了is_numeric函数让用户知道用户输入的是一个词而不是aa号 我知道你想把这个词转换成大写。我需要找到用户输入的单词的长度,我已经使用strlen函数完成了。我知道必须给每个字母一个值,比如a=1,b=2,c=3等等 然后,我需要依次检查每个字母,看看用户使用的是他们收到的字母中的哪个字母。如果用户使用的字母不在单词中,则不会为该字母指定值。然后,我希望能够用值显示单词的每个字母 下面是一个我希望它看起来像什么的例子 如果用户输入单词“are”我使用的是PHP,我有一个后端表单,用户必须使用,php,arrays,if-statement,strlen,Php,Arrays,If Statement,Strlen,我有一个后端表单,用户必须使用centurion字母(如ARESTU)输入字母。我已经把这个词发布到了PHP生活中,并使用了is_numeric函数让用户知道用户输入的是一个词而不是aa号 我知道你想把这个词转换成大写。我需要找到用户输入的单词的长度,我已经使用strlen函数完成了。我知道必须给每个字母一个值,比如a=1,b=2,c=3等等 然后,我需要依次检查每个字母,看看用户使用的是他们收到的字母中的哪个字母。如果用户使用的字母不在单词中,则不会为该字母指定值。然后,我希望能够用值显示单词
- A=1
- R=18
- E=5
<? php
$word = $_POST["word"];
$product = 1;
strtoupper($word);
print "$word <br> ";
if (is_numeric($word)) {
print "Please enter a word";
}
$test = strlen($word);
print "Number of letters in the word are $test";
$lettersArray = array(
'a' = 1,
'e' = 5,
'r' = 18,
's' = 19,
't' = 20,
'u' = 21,
'other' = 0,
);
$valueString = "";
for ($i = 0; $i < strlen($word); $i++) {
$letter = strtolower(substr($string, $i, 1));
$valueString. = $lettersArray[$letter];
}
$product = $product * $word;
?>
尝试以下代码:
<? php
$word = $_POST["word"];
$product = 1;
strtoupper($word);
print "$word <br> ";
if (is_numeric($word)) {
print "Please enter a word";
}
$test = strlen($word);
print "Number of letters in the word are $test";
// Your array
$lettersArray = array(
'a' => 1,
'e' => 5,
'r' => 18,
's' => 19,
't' => 20,
'u' => 21,
'other' => 0,
);
// convert word into lower case or upper case
$word = strtolower($word);
// Split each chars of word and store in array
$chars = str_split($word);
// find the total in foreach or any other loop
foreach ($chars as $char)
{
if(key_exists($char, $lettersArray))
$product = $product * $lettersArray[$char];
}
echo $product;
?>
她是您修改后的代码
编辑2
$word = "ARE";
$product = 1;
strtoupper($word);
print "$word <br> ";
if (is_numeric($word)) {
print "Please enter a word";
}
$test = strlen($word);
print "Number of letters in the word are $test <br>";
$lettersArray = array(
'a' => 1,
'e' => 5,
'r' => 18,
's' => 19,
't' => 20,
'u' => 21,
'other' => 0,
);
$valueString = 0;
$assignednumberalpha = null;
for ($i = 0; $i < strlen($word); $i++) {
$letter = strtolower($word[$i]);
$valueString = $valueString+$lettersArray[$letter];
$assignednumberalpha .= "$letter =".$lettersArray[$letter].'<br>';;
}
$product = $product * $word;
echo $assignednumberalpha;
echo "The final Result : $valueString";
?>
$word=“ARE”;
$product=1;
strtoupper($word);
打印“$word
”;
如果(是数字($word)){
打印“请输入一个单词”;
}
$test=strlen($word);
打印“单词中的字母数为$test
”;
$lettersArray=数组(
“a”=>1,
“e”=>5,
'r'=>18,
's'=>19,
‘t’=>20,
‘u’=>21,
“其他”=>0,
);
$valueString=0;
$assignednumberalpha=null;
对于($i=0;$i”;;
}
$product=$product*$word;
echo$assignednumberpha;
回显“最终结果:$valueString”;
?>
$array=['a'=>5,'b'=>6,'e'=>7,'r'=>8,'t'=>9];
函数myfunc($array,$word)
{
$tmp=[];
$word=strtolower($word);
对于($i=0;$i
您到底想要什么?您得到了什么?您是否搜索ord()
函数来将字符转换为ascii码?数组错误,应使用“=>”而不是“=”在ArrayShank you中,这帮了大忙。我现在尝试做的唯一一件事就是显示,就是尝试将单词关闭,这样当用户在后端表单中输入单词并单击submit按钮时,不仅显示单词display,而且如果单词有两个a,则显示a=2,就像在apple中,如果用户输入的字母不在列表中一样“然后它就变成了另一个了。”丽贝卡肖在苹果公司得了两个a,是吗?不管怎么说,当用户输入word时,你想显示分配给它的号码吗?哈哈,对我来说太早了,我应该告诉p的,但是的,你是对的,这就是我想要的do@RebekahShaw现在检查,这是你需要的吗?首先它是不可读的。第二:这是如何回答这个问题的?第三:你也必须给你的网站发垃圾邮件吗?标记为垃圾邮件。
$array = ['a' => 5, 'b' => 6, 'e' => 7, 'r' => 8, 't' => 9];
function myfunc($array, $word)
{
$tmp = [];
$word = strtolower($word);
for ($i = 0; $i < strlen($word); $i++)
$tmp[] = $array[$word[$i]];
return array_sum($tmp);
}
print_r(myfunc($array, 'bat'));