1. php输出固定长度的数据库字段乱码
你的问题可能族游弯有两个原因 :
1. 数据库使用 非 utf-8 编码.
2. 网页没有指定为 utf-8编码.
第二种情况的可能性更大,浏览器默认使用gbk编码.
解决方法 :
1. 使用header()函数指定编码,在脚本第一磨陆行加入 : header('Content-Type:text/html;chaset:utf-8');
2. 使用
<meta http-equiv='Content-type' content='text/html';
charset="utf-8" /兆闷>
元标签也能指定页面编码.
2. PHP裁剪 动态裁剪框,要求生成固定大小的图片
<?php
$sourcefile = 'x.jpg';
#目标宽度
$newwidth = 150;
#目标高度
$newheight = 120;
#目标比例
$newbili = $newwidth / $newheight;
#源图片宽高
list($width, $height) = getimagesize($sourcefile);
if($width / $height > $newbili){
#原图较长
$w = $width - $newbili * $height;
$h = $height;
$x = ($width - $w) / 2;
$y = 0;
}else{
#原图较宽
$w = $width;
$h = $height - $newbili * $width;
$x = 0;
$y = ($height - $h) / 2;
}
$source = imagecreatefromjpeg($sourcefile);
$thumb = imagecreatetruecolor($newwidth, $newheight);
imageresized($thumb, $source, 0, 0, $x, $y, $newwidth, $newheight, $w, $h);
imagejpeg($thumb, "a.jpg");
注:此程序未考虑原图比目标图片小的情况
3. php正则表达取指定长度文本怎么弄
如果你只是限制用户名或者密码的长度,那就没必要用正则
$user = $_POST['user'];
if ( strlen( $user ) < 6 || strlen( $user ) > 12 ) {
用户名长度只能6-12位
}
如果是要限制长度,并且只能是字母数字的话, 那就可以用正则
if ( !preg_match('/^\w{6,12}$/is') ) {
用户名必须是字母数字下划线组合,6-12位
}
至于你第二个问题,估计是编码没有统一,否则不可能出现那种字符的
4. php 如何做一个固定长度的数组
<?php
//php仿造java定长数组: int[] source = new int[10];
$source = new SplFixedArray(10);
//$source[10] = 1;这种会报错,因为超越了数组的边界,$source下标最大为9
//仿造java给数组元素默认赋值为0
for ($i=0; $i < sizeof($source); $i++) {
$source[$i] = 0;
}
//数组扩容为原来的1.5倍
$size = sizeof($source);
$destination = new SplFixedArray($size + ($size >> 1));
for ($i=0; $i < sizeof($source); $i++) {
$destination[$i] = $source[$i];
}
print_r($destination);
5. PHP 怎么定义一个 固定长度的数组
使用SplFixedArrays定义长度 和array一样 但是操作速度要比array好
6. 如何生成数千万不重复的固定长度的字串
if (function_exists('_create_guid')){
return _create_guid();
}else{
mt_srand((double)microtime()*10000);optional for php 4.2.0 and up.
$charid = strtoupper(md5(uniqid(rand(), true)));
$hyphen = chr(45); "-"
$uuid = chr(123) "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
SUBSTITUTE(text,old_text,new_text,instance_num)
Text 为需要替换其中字符的文字,或对含有文字的单元格的引用。
Old_text 为需要替换的旧文字。
New_text 用于替换old_text的文字。
Instance_num 为一数值,用来指定以new_text替换第几次出现的old_text。如果指定了instance_num,则只有满足要求的old_text被替换;否则将用new_text替换Text中出现的所有old_text。
#include<stdio.h>int main(){char s[]="good"; int i; for(i=0;i<4;i++) printf("%c",s[i]); printf(" "); return 0;}
用阵列形式的话,一定要指定长度,不指定的话要一个字串来初始化,这样长度可以通过字串来自动获得
不过C99标准支援变长阵列,就是定义阵列的时候,大小可以是个变数
char word1[]="hello";这样是合法的
char word1[6]="hello";这样也是合法的
但是char word1[];这样是不合法的
如果想后来才指定大小的话,可以通过大小来动态申请空间
c中用malloc(或者calloc),使用完以后用free释放
c++中除了上面的,还可以用new来申请,用delete来释放
c/c++ 语言 数值 转化为字串 可以用 sprintf 函式实现。
例如:
int k=12; float f=34.567; double d=9.87654;
char sk[20],sf[20],sd[20];
sprintf(sk,"%d",k);
sprintf(sf,"%f",f);
sprintf(sd,"%lf",d);
如果铅戚给定长宽, 小数点位数,左对齐还槐脊陵是右对齐,也可野宏以用格式来设定。
假设A列为
2004-1-2
2004-12-26
要在B列显示结果.
可在B1输入:
=right(A1,len(A1)-5),下拉即可
private void button2_Click(object sender, System.EventArgs e)
{
Random r=new Random();
ArrayList list=new ArrayList();
for(int i=1;i<=1000;i++)
{
list.Add(i);
}
StringBuilder *** =new StringBuilder();
for(int i=999;i>=0;i--)
{
int j=r.Next(0,i);
*** .Append(list[j]+"-");
list.RemoveAt(j);
}
this.textBox1.Text= *** .ToString();
}
c/c++ 语言 数值 转化为字串 可以用 sprintf 函式实现。
例如:
int k=12; float f=34.567; double d=9.87654;
char sk[20],sf[20],sd[20];
sprintf(sk,"%d",k);
sprintf(sf,"%f",f);
sprintf(sd,"%lf",d);
当然,你愿意 给定场宽, 小数点位数,左对齐还是右对齐,也可以用格式设定。
SQL code
DECLARE @SID varchar(30)
SET @SID = 'S' + CONVERT(nvarchar(13),REPLACE(CONVERT(decimal(18,8),GETDATE()),'.','')) + RIGHT(NEWID(),12)
PRINT @SID
7. PHP:应该如何将字符串格式化成固定长度呢
$input = "冲慧Alien";
echo str_pad($input, 10); /散察答没仔/ 输出 "Alien "
8. PHP可以规定数组长度吗
C的数组只相当于内存块。“规定数组长度”本质上是申请固定的内存空间。
而PHP的数组相比高级高层太多,是动态数组、栈、散列表的综合体。
基本上PHP是没有场合需要预先规定数组长度。
如果要模拟c的占空间,可以生成一个有键的数组,比如模拟 int a[3];
可以
$a[0]=0;
$a[1]=0;
$a[2]=0;
这一过程可以批量完成。但没有任何实用意义。
9. php的数组怎么定义长度
php如何获取一维数组的长度,使用php函数count(),或是sizeof();
示例如下:
$arr = Array('0','1','2','3','4');
echo count($arr);
// 输出 5
$arr = array('A','B','C');
echo sizeof($arr);
//输出3
多维数组:
$arr=array(
0=>array('title' => '新闻1', 'viewnum' => 123, 'content' => '内容1'),
1=>array('title' => '新闻2', 'viewnum' => 99, 'content' => '内容2')
);
echo '不统计多维数组:'.count($arr,0); echo '或用sizeof为'.sizeof($arr,0);
echo "<br/>";
echo '统计多维数组:'.count($arr,1);echo '或用sizeof为'.sizeof($arr,1);
10. php显示指定长度的字符串,超出长度以省略号填补尾部
例子1,使用strlen获得长度,substr提取前5个字符:
$str='123456789';
if(strlen($str)>5)$str=substr($str,0,5).'...';
echo$str;
例子2,使用explode拆分IP,然后组装:
$ip='192.168.0.1';
list($ip1,$ip2,$ip3)=explode('.',$ip);
$ip="*-*-$ip3-$ip4";
echo$ip;