入力名の数値結果を作成するための小さなスクリプトがあります。名前とそれに対応する値を最初に繰り返した後、最終結果に数字を追加して、「マスター番号」を取得する必要があります。私が抱えている問題は、0を返し続ける最終結果を繰り返すことです。繰り返しに沿ってチェックすると、配列内の値が見つからないことがわかります。どこが間違っていたのですか?配列を反復すると値が見つからない
<?php
if($_POST)
{
// create an array based on chaldean numerology
$ar = array('A' => 1,
'B' => 2,'C' => 3,'D' => 4,'E' => 5,'F' => 6,'G' => 7,'H' => 8,'I' => 9,
'J' => 1,'K' => 2,'L' => 3,'M' => 4,'N' => 5,'O' => 6,'P' => 7,'Q' => 8,
'R' => 9,'S' => 1,'T' => 2,'U' => 3,'V' => 4,'W' => 5,'X' => 6,'Y' => 7,
'Z' => 8,'1' => 1,'2' => 2,'3' => 3,'4' => 4,'5' => 5,'6' => 6,'7' => 7,
'8' => 8,'9' => 9);
//get the value entered by post method
$fname = $_POST['fname'];
//make it upper case. to avoid messing with small letters.
$fname = strtoupper($fname);
//find the length of the string entered
$len = strlen($fname);
//set a temp value to calculate
$fullnum = 0;
$masternum = 0;
//now loop through the string one by one and add the values
for($i=0; $i<$len; $i++)
{
$alpha = $fname[$i];
$fullnum = $ar[$alpha] + $fullnum;
}
//now loop through the fullnum one by one and add the values
$flen = strlen($fullnum);
for($i=0; $i<$flen; $i++)
{
$alpha = $fullnum[$i];
$masternum = $ar[$alpha] + $masternum;
}
//print the result
//echo "FLEN = " . $flen . "<br>";
echo "<hr>INTEGRATED SELF NUMBER: ". $fullnum . "/" . $masternum;
}
?>
<form action="" method="post">
<input type="text" name="fname" value="Full Name" />
<input type="submit" value="calculate" />
</form>
これは恐ろしいことです...私は数日前にこの質問にいくつかのコメントを残しました。今私は戻って来て、私はコメントがなくなったのを見る。私は削除されたコメントや何かについての通知を何も受け取らなかった。何が起こった?そのコメントはどこですか? – arkascha
3人のユーザーからこの質問に6件のコメントがありました。明らかに彼らは削除されました。それは私の胃の中に_very_悪い気持ちを残します。このような検閲の形態は、ここに導入されるべきではない。 _特に、トレースを残さずに。 – arkascha
私は実際には1つのコメントしか見たことがありません。それは邪魔です... –