PHP程序无需使用库函数即可将字符串转换为大写
给定一个字符串,我们必须在不使用任何库函数的情况下将其转换为大写字符串。
PHP代码:
<?php
//函数定义
//此函数接受字符串/文本,转换
//将文本转换为大写并返回转换后的大写字符串
function upperCase($str)
{
$chars = str_split($str);
$result = '';
//从第0个字符到最后一个字符循环
for ($i = 0; $i < count($chars); $i++) {
//提取字符并获取其ASCII值
$ch = ord($chars[$i]);
//如果字符是小写字母,则转换
//将其转换为大写字母
if ($chars[$i] >= 'a' && $chars[$i] <= 'z')
$result .= chr($ch - 32);
else
$result .= $chars[$i];
}
//最后,返回字符串
return $result;
}
//函数调用
$text = "hello world";
echo upperCase($text);
echo "<br>";
$text = "Hello world!";
echo upperCase($text);
echo "<br>";
$text = "[email protected]";
echo upperCase($text);
echo "<br>";
?>输出结果
HELLO WORLD HELLO WORLD! [email protected]
代码说明:
我们将字符串($str)转换为字符数组($chars),然后使用ord()函数计算其ASCII值。因为我们知道在ASCII中,大写字符恰好在小写字母之前32位,所以我们从ASCII值中减去32,然后使用chr()函数将其转换回字符。输出存储在$result变量中。
该程序是概念的很好证明。