从文本文件将数据读入数组时,PHP ucwords函数无法与strtolower一起正常使用

问题描述

我正在使用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 (将#修改为@)