问题描述
我正在使用explode在一行用逗号分隔的大写文本中将文本文件中的大写文本读入数组,然后使用带strtolower和ucword的foreach循环仅将每个单词大写,但是奇怪的是它不会执行第一个数据项的ucwords读入数组,但其他所有ucwords读入。如果我将数据直接送入数组而不从文件中读取,那么它有效吗?我已经尝试过各种铸造和检查,但是看不到这种情况发生了吗?
测试脚本:test.PHP
<?PHP
// $data = array('LEVEL','COURSE TITLE','APPLICATIONS','OFFERS','FIRM ACCEPTS');
$dataFile = 'test.txt';
$handle = fopen($dataFile,'r');
while (!feof($handle)) {
$data = explode(',',fgets($handle));
}
echo '<pre>';
print_r($data);
echo '</pre>';
foreach ($data as $item) {
echo '<p>' . ucwords(strtolower($item)) . '</p>';
}
?>
数据文件:test.txt
级别,课程名称,应用程序,要约,企业认可
以上设置的输出(请注意,“级别”应为“级别”
Array
(
[0] => LEVEL
[1] => COURSE TITLE
[2] => APPLICATIONS
[3] => OFFERS
[4] => FIRM ACCEPTS
)
level
Course Title
Applications
Offers
Firm Accepts
任何帮助将不胜感激...
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)