我如何将字符串分解为数组。实际上我想将英语翻译成盲文。我需要做的第一件事是从字符串中逐个获取字符,然后通过mathing从数据库中的值转换它们,并使用pic显示盲文代码。例如,当用户输入“abc ef”时,这将在彼此之间单独创建值。
Array
(
[0] => a
[1] => b
[2] => c
[3] =>
[4] => e
[5] => f
)
我试图做但没有得到所需的输出。此代码分隔整个字符串。
$papar = preg_split('/[\s]+/', $data);
print_r($papar);
对不起简单的问题,如果你们都知道我应该如何翻译它,请随时提供帮助。 :)
答案 0 :(得分:2)
如果您使用的是PHP5,str_split
将完全符合您的要求。它将字符串中的每个字符 - 包括空格 - 拆分为单个元素,然后返回这些元素的数组:
$array = str_split("abc ef");
print_r($array);
输出以下内容:
Array
(
[0] => a
[1] => b
[2] => c
[3] =>
[4] => e
[5] => f
)
<强>更新强>:
PHP4解决方案是使用preg_split
。传递双正斜杠作为匹配模式,以分隔逐个字符的分割。然后,设置PREG_SPLIT_NO_EMPTY
标志以确保在字符串的开头和结尾不会返回任何空片段:
$array = preg_split('//', "abc ef", -1, PREG_SPLIT_NO_EMPTY); // Returns same array as above
答案 1 :(得分:0)
PHP有一种非常简单的方法来获取特定索引处的字符。
为此,请使用substring方法并传入您要查找的索引。
我将如何解决您的问题
确定字符串的长度
int strlen ( string $string )
循环每个字符并根据该字符执行某些操作
使用字符串“abcdef”
$rest = substr("abcdef", -1); // returns "f"
有关完整示例和更多信息,请参阅substr页面
答案 2 :(得分:-1)
您可以迭代字符串本身。
$data = 'something string';
for($ctr = 0; $ctr < strlen($data); $ctr++)
{
if($data{$ctr}):
$kk = mysql_query("select braille_teks from braille where id_huruf = '$data{$ctr}'");
$jj = mysql_fetch_array($kk);
$gambar = $jj['braille_teks'];
?>
<img src="images/<?php echo $gambar;?>">
<?php
else:
echo " ";
}