这就是我想要做的事情:
将单词拆分为单独的字符。输入单词来自表单,可以与每个用户不同。
为每个charachter分配变量,以便我可以单独操作它们。
到目前为止,她是我的代码(不起作用)。如果这里出现了很多愚蠢的错误,那我就是道歉,但我是PHP的新手。
<?php
$word = $_POST['input'];
//split word into charachters
$arr1 = str_split($word);
//assigning a variable to each charchter
$bokstaver = array();
while($row = $arr1)
{
$bokstaver[] = $row[];
}
$int_count = count($bokstaver);
$i=0;
foreach ($bokstaver as $tecken) {
$var = 'tecken' . ($i + 1);
$$var = $tecken;
$i++;
}
?>
我想最终得到尽可能多的$ tecken变量(名称为$ tecken,t $ tecken1,$ tecken2等)作为输入中的字符数。
所有人都非常感激,一如既往!
答案 0 :(得分:0)
我认为这不是一个好主意,但是你是如何做到的:
<?php
$input = 'Hello world!';
for($i = 0; $i < strlen($input); $i++) {
${'character' . $i} = $input[$i];
}
答案 1 :(得分:0)
$word = 'test';
echo $word[2]; // returns 's'
echo $word{2}; // returns 's'
$word{2} = 'b';
echo $word{2}; //returns 'b'
echo $word; // returns 'tebt'
...
答案 2 :(得分:0)
您不需要为每个字母创建单独的变量,因为您拥有数组中的所有字母。然后你只需索引数组就可以得到每个字母。
我会这样做。
//get the word from the form
$word = $_POST['input'];
//split word into characters
$characters = str_split($word);
//suppose the word is "jim"
//this prints out
// j
// i
// m
foreach($characters as $char)
print $char . "\n"
//now suppose you want to change the first letter so the word now reads "tim"
//Access the first element in the array (ie, the first letter) using this syntax
$characters[0] = "t";