我的数据库有是个字段其中有六个市长度超过100的,如果在页面显示,排版不好排,所以想截取这六个字段的钱十个字符其他的用....表示
大家用什么好的想法吗 而且我在查询数据库是是全部查询 数据放在集合中
要怎么写才能简单一些
大家用什么好的想法吗 而且我在查询数据库是是全部查询 数据放在集合中
要怎么写才能简单一些
解决方案 »
- $argv这个函数一般在什么情况下用
- php多个一维数组合并成二维数组
- mysql update语句 请教各位哥哥
- 如何过滤掉一段文字里的' ' " [ ]字符?
- php如何实现web报表的打印功能
- 请教:index.php?url=http://www.baidu.com 这个index.php如何写?
- 在线哟!!!!php分页问题,多多指教!!!
- 关于文件上传的问题
- $REMOTE_ADDR在自定义函数里面不能直接引用?
- 如何判断用户输入的是中文还是英文,数字,或者是非法的字幅。
- Fatal error: Call to undefined function curl_init() 死活解决不了
- 指定替换某一次匹配的内容
$business = D('business');
$this->count();
$list=$business->select();
//用视图查之后放到list中 页面输出
print_r($list[title]); 这一步不对吗?为什么页面不显示值呢
if(mb_strlen($list[title]) < 6)
{
$data = $list[title];
}
else
{
$list[title]= mb_substr($title , 0, 10, 'utf-8').'...';
$data = $list[title];
}
$this->assign('list',$data);
$this->display('getAll');
}
//前几天项目用到的,自己随便写的一个函数
function cutString($string='',$length=60,$endString='...')
{
$string = trim($string);
if('' == $string) {
return '';
} $oldLength = strlen($string);
$newString= array();
for($i=0;$i<$length;$i++) {
$tmpString = substr($string, 0, 1);
if(ord($tmpString)>127) {
$i++;
if($i<$length) {
$newString[] = substr($string, 0, 3);
$string = substr($string,3);
}
}
else {
$newString[] = substr($string, 0, 1);
$string = substr($string, 1);
}
} $newString = implode('',$newString); return strlen($newString) < $oldLength ? $newString.$endString : $newString;
}
{
$substr=strlen($s)>20?substr(0,20,$str).chr(0).'...':$s;
return $substr; // 20表示10个中文
}如果中英混合的话就用ASCII码值判断下英文取多少,中文取多少
{
$returnstr = '';
$i = 0;
$n = 0.0;
$str_length = strlen($sourcestr); //字符串的字节数
while ( ($n<$cutlength) and ($i<$str_length) )
{
$temp_str = substr($sourcestr, $i, 1);
$ascnum = ord($temp_str); //得到字符串中第$i位字符的ASCII码
if ( $ascnum >= 252) //如果ASCII位高与252
{
$returnstr = $returnstr . substr($sourcestr, $i, 6); //根据UTF-8编码规范,将6个连续的字符计为单个字符
$i = $i + 6; //实际Byte计为6
$n++; //字串长度计1
}
elseif ( $ascnum >= 248 ) //如果ASCII位高与248
{
$returnstr = $returnstr . substr($sourcestr, $i, 5); //根据UTF-8编码规范,将5个连续的字符计为单个字符
$i = $i + 5; //实际Byte计为5
$n++; //字串长度计1
}
elseif ( $ascnum >= 240 ) //如果ASCII位高与240
{
$returnstr = $returnstr . substr($sourcestr, $i, 4); //根据UTF-8编码规范,将4个连续的字符计为单个字符
$i = $i + 4; //实际Byte计为4
$n++; //字串长度计1
}
elseif ( $ascnum >= 224 ) //如果ASCII位高与224
{
/**
* 进入它
* Enter description here ...
* @var unknown_type
*/
$returnstr = $returnstr . substr($sourcestr, $i, 3); //根据UTF-8编码规范,将3个连续的字符计为单个字符
$i = $i + 3 ; //实际Byte计为3
$n++; //字串长度计1
echo "$returnstr";
}
elseif ( $ascnum >= 192 ) //如果ASCII位高与192
{
$returnstr = $returnstr . substr($sourcestr, $i, 2); //根据UTF-8编码规范,将2个连续的字符计为单个字符
$i = $i + 2; //实际Byte计为2
$n++; //字串长度计1
}
elseif ( $ascnum>=65 and $ascnum<=90 and $ascnum!=73) //如果是大写字母 I除外
{
$returnstr = $returnstr . substr($sourcestr, $i, 1);
$i = $i + 1; //实际的Byte数仍计1个
$n++; //但考虑整体美观,大写字母计成一个高位字符
}
elseif ( !(array_search($ascnum, array(37, 38, 64, 109 ,119)) === FALSE) ) //%,&,@,m,w 字符按1个字符宽
{
$returnstr = $returnstr . substr($sourcestr, $i, 1);
$i = $i + 1; //实际的Byte数仍计1个
$n++; //但考虑整体美观,这些字条计成一个高位字符
}
else //其他情况下,包括小写字母和半角标点符号
{
$returnstr = $returnstr . substr($sourcestr, $i, 1);
$i = $i + 1; //实际的Byte数计1个
$n = $n + 0.5; //其余的小写字母和半角标点等与半个高位字符宽...
}
}
if ( $i < $str_length )
{
$returnstr = $returnstr.$etc; //超过长度时在尾处加上省略号
}
return $returnstr;
}大家帮我看看哪错了 为什么页面的值不输出