php中使用mb_strlen解决中文字符数,以及中文截取乱码问题
[ 2012-12-13 20:14:15 | 作者: admin ]
p.s. 使用mb_strlen函数必须指定编码
在长度检查方面,数据库使用的是varchar,长度是按字符个数算的,比如“abcdef”算6个字符,“一二三四五六”也算六个字符。而php的strlen方法算出并不一样,strlen("abcdef")是6,而strlen("一二三四五六")是18。这样检查起来就麻烦了。
php处理中文字符数,可以用mb_strlen() ,具有编码无关性,看下面的演示:
mb_strlen('abcdef','utf-8') == 6
mb_strlen('一二三四五六','utf-8') ==6
另外中文的截取也需要mb_substr()也是编码无关性,看演示
<?php
echo mb_substr('曾经年少爱追梦一心只想往前飞', 0, 7, 'utf-8');
...
阅读全文…
在长度检查方面,数据库使用的是varchar,长度是按字符个数算的,比如“abcdef”算6个字符,“一二三四五六”也算六个字符。而php的strlen方法算出并不一样,strlen("abcdef")是6,而strlen("一二三四五六")是18。这样检查起来就麻烦了。
php处理中文字符数,可以用mb_strlen() ,具有编码无关性,看下面的演示:
mb_strlen('abcdef','utf-8') == 6
mb_strlen('一二三四五六','utf-8') ==6
另外中文的截取也需要mb_substr()也是编码无关性,看演示
<?php
echo mb_substr('曾经年少爱追梦一心只想往前飞', 0, 7, 'utf-8');
...
阅读全文…
PHP n个不重复的随机数生成代码
[ 2012-12-13 16:54:13 | 作者: admin ]
p.s. 建议用mt_rand替换rand函数
php取一个随机数的方法
php取若干不重复的随机数的方法
方法一:
阅读全文…
php取一个随机数的方法
srand((double)microtime()*1000000); //给一个种子
$rand_number= rand(0,100); //取一个 0-100 之间的随机数
$rand_number= rand(0,100); //取一个 0-100 之间的随机数
php取若干不重复的随机数的方法
方法一:
<?php
//range 是将1到100 列成一个数组
$numbers = range (1,100);
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//array_slice 取该数组中的某一段
$no=6;
$result = array_slice($numbers,0,$no);
for ($i=0;$i<$no;$i++){
...//range 是将1到100 列成一个数组
$numbers = range (1,100);
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//array_slice 取该数组中的某一段
$no=6;
$result = array_slice($numbers,0,$no);
for ($i=0;$i<$no;$i++){
阅读全文…
php 数组中随机选取5个
[ 2012-12-13 15:56:26 | 作者: admin ]
随机选取数组元素。
//传入参数。1-20的一个数组。 选取5 个随机数
print_r(randges( $arrNews ,5));
print_r(randges(range(1,20),5));
function randges($numbers,$no){
//判断数组长度是否大于所取值的长度
if(count($numbers)<$no){echo '你真会开玩笑……';return false;}
//得到随机选取元素的长度
$numbers ;
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//产生数组长度...
阅读全文…
//传入参数。1-20的一个数组。 选取5 个随机数
print_r(randges( $arrNews ,5));
print_r(randges(range(1,20),5));
function randges($numbers,$no){
//判断数组长度是否大于所取值的长度
if(count($numbers)<$no){echo '你真会开玩笑……';return false;}
//得到随机选取元素的长度
$numbers ;
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//产生数组长度
阅读全文…
windows下使用PHP实现定时执行脚本
[ 2012-12-13 11:20:40 | 作者: admin ]
一直以来,使用PHP定时运行脚本都是让大家头痛的问题,但是我们确实可以利用windows的计划任务来定时调用PHP脚本,当然这还要感谢PHP.exe。下面,站长将向大家介绍,如何来实现。
目标:根据系统时间定时执行PHP脚本,不需要人工运行(这里以定时新建一个文本文件并写入内容为例)
解决步骤:
1、建立PHP脚本,如下:
<meta charset='utf-8'>
<?php
file_put_contents('D:\www\root\1.txt','ok');
?>
大家,可以看见,我们在这里对将要创建的文件路径使用了绝对路径,这是因为我们将要通过windows命令行来调用此脚本,由于cmd.exe与我们的web根目录是不一样的,而php的文件目录函数只能在web根目录范围内进行操作,所以我们需要使用绝对路径,否则代码将正确执行但是文件将不会被创建。
2、新建.bat文件,代码如下:
"D:\Program ...
阅读全文…
目标:根据系统时间定时执行PHP脚本,不需要人工运行(这里以定时新建一个文本文件并写入内容为例)
解决步骤:
1、建立PHP脚本,如下:
<meta charset='utf-8'>
<?php
file_put_contents('D:\www\root\1.txt','ok');
?>
大家,可以看见,我们在这里对将要创建的文件路径使用了绝对路径,这是因为我们将要通过windows命令行来调用此脚本,由于cmd.exe与我们的web根目录是不一样的,而php的文件目录函数只能在web根目录范围内进行操作,所以我们需要使用绝对路径,否则代码将正确执行但是文件将不会被创建。
2、新建.bat文件,代码如下:
"D:\Program ...
阅读全文…
php模拟get和post的几种方法(fsockopen,curl 等)
[ 2012-12-13 11:14:13 | 作者: admin ]
使用 file_get_contents
使用curl
阅读全文…
$re = file_get_contents($url);
print_r($re);
print_r($re);
使用curl
$ch = curl_init("http://www.xg98.com/") ;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
$output = curl_exec($ch) ;
$fh = fopen("out.html", 'w') ;
fwrite($fh, $output) ;
...curl_setopt($ch, CURLOPT_RETURNTRANSFER, true) ;
curl_setopt($ch, CURLOPT_BINARYTRANSFER, true) ;
$output = curl_exec($ch) ;
$fh = fopen("out.html", 'w') ;
fwrite($fh, $output) ;
阅读全文…
1