使用函数mb_substr,例子:
<?php /** * mb_substr截取中文字符串 * edit www. */ header('Content-Type:text/html;charset:utf-8'); $a = "脚本sdf学堂,欢迎sf3s大家的xfs光临。好幸fxesd福啊。"; $b = mb_substr($a, 0,10,'utf-8'); echo $b; ?>
有关php中mb_substr函数的例子,还可以参考:
php截断字符串函数mb_substr()范例
php截取中文字符串的二个函数(iconv_substr和mb_substr)
php中文字符串截取(mb_substr)实例
首先,来看一个php中文件操作的例子,如下:
$path1= "F:/www/xxx.txt";
if(!file_exists($path1)){
echo "文件不存在!";
}else{
$handle1 = fopen($path1, 'r+') or exit("Unable to open file");
// while (!feof($handle1)){
// echo fgets($handle1)."<br>";
// }
while(!feof($handle1)){
echo fgetc($handle1);
}
}
?>
以上实现了一个简单的文件读取操作。
说明:
fopen是打开文件资源。
使用方法:
$file=fopen("welcome.txt","r");
具体意思:第一个参数是文件的路径。
后面的参数是要求用何种方式打开文件,有下面几种类型:
r+ 读/写。在文件的开头开始。
w 只写。打开并清空文件的内容;如果文件不存在,则创建新文件。
w+ 读/写。打开并清空文件的内容;如果文件不存在,则创建新文件。
a 追加。打开并向文件文件的末端进行写操作,如果文件不存在,则创建新文件。
a+ 读/追加。通过向文件末端写内容,来保持文件内容。
x 只写。创建新文件。如果文件已存在,则返回 FALSE。
x+
读/写。创建新文件。如果文件已存在,则返回 FALSE 和一个错误。
注释:如果 fopen() 无法打开指定文件,则返回 0 (false)。
比较常用的是前面的4个。
fgetc:
string fgetc ( resource$handle )
返回一个包含有一个字符的字符串,该字符从 handle 指向的文件中得到。碰到 EOF 则返回FALSE。
fgets:
string fgets ( int$handle [,int$length ] )
从 handle 指向的文件中读取一行并返回长度最多为length - 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(看先碰到那一种情况)。如果没有指定length,则默认为 1K,或者说 1024 字节。
出错时返回 FALSE。
fgetss:
string fgetss ( resource$handle [,int$length [,string$allowable_tags ]] )
和 fgets() 相同,只除了 fgetss 尝试从读取的文本中去掉任何 HTML 和 PHP 标记。(跟fgets()相同,只是他过滤了html和php的标记而已。)
可以用可选的第三个参数指定哪些标记不被去掉。
feof() 函数检测是否已到达文件末尾 (eof)。
//判断文件或目录是否存在
bool file_exists(string filename)
判断文件或目录是否存在,存在则返回真,否则返回假
格式:
if(file_exists(“hello.txt”))
{
Echo “文件存在”;
}
//打开文件
格式:
fopen(filename,mode)
说明:按指定的格式打开指定的文件
filename:要打开的文件名
mode : 打开模式
fopen(“hello.txt”,”w”);
表示以写的方式打开hello.txt文件
//写文件
格式:
fwrite(resource,string);
说明:在打开的文件中添加指定的内容
resource:打开的文件
string:要写入的内容
例:
$handle = fopen(“hello.txt”,”w”) //若a ,则可追加数据
fwrite($handle,”1\r\n”)
//关闭文件
格式:
fclose($handle)
说明:关闭打开的文件
例:
$handle = fopen(“hello.txt”,”w”);
fclose($handle);
//读取一行数据
格式:
fgets(int handle[,int length])
说明:读取length-1个字符。若没有指定length,则默认字节为1KB,若遇到换行、EOF或则已经读取了length-1个字符,则程序终止,出错时候返回false;
以下代码实现这样的功能:
比如数字01则返回January,数字02则返回February,依此类推。
代码如下:
<?php /** * 根据月份数字返回月份名称 * edit www. * date 2013/6/21 */ function Month($NumMonth) { switch($NumMonth) { Case "01": return "January"; break; Case "02": return "February"; break; Case "03": return "March"; break; Case "04": return "April"; break; Case "05": return "May"; break; Case "06": return "June"; break; Case "07": return "July"; break; Case "08": return "August"; break; Case "09": return "September"; break; Case "10": return "October"; break; Case "11": return "November"; break; Case "12": return "December"; break; } } ?>