4:为什么我向另一网页传送变量时,只得到前半部分,以空格开头的则全部丢失
php代码:
<?php
$var=”hello php”;//修改为$var=” hello php”;试试得到什么结果
$post= “receive.php?name=”.$var;
header(“location:$post”);
?>
receive.php的内容:
php代码:
<?php
echo “<pre>”;
echo $_get[“name”];
echo “</pre>”;
?>
正确的方法是:
php代码:
<?php
$var=”hello php”;
$post= “receive.php?name=”.urlencode($var);
header(“location:$post”);
?>
在接收页面你不需要使用urldecode(),变量会自动编码.
5:如何截取指定长度汉字而不会出现以”?>”结尾,超出部分以”…”代替
一般来说,要截取的变量来自mysql,首先要保证那个字段长度要足够长,一般为char(200),可以保持100个汉字,包括标点.
php代码:
<?php
$str=”这个字符好长呀,^_^”;
$short_str=showshort($str,4);//截取前面4个汉字,结果为:这个字符…
echo “$short_str”;
function csubstr($str,$start,$len)
{
$strlen=strlen($str);
$clen=0;
for($i=0;$i<$strlen;$i++,$clen++)
{
if ($clen>=$start+$len)
break;
if(ord(substr($str,$i,1))>0xa0)
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,2);
$i++;
}
else
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,1);
}
}
return $tmpstr;
}
function showshort($str,$len)
{
$tempstr = csubstr($str,0,$len);
if ($str<>$tempstr)
$tempstr .= “…”; //要以什么结尾,修改这里就可以.
return $tempstr;
}
6:规范你的sql语句
在表格,字段前面加上”`”,这样就不会因为误用关键字而出现错误,当然我并不推荐你使用关键字.
例如
$sql=”insert into `xltxlm` (`author`, `title`, `id`, `content`, `date`) values (xltxlm, use`, 1, criterion your sql string , 2003-07-11 00:00:00)”
”`”怎么输入? 在tab键上面.
7:如何使html/php格式的字符串不被解释,而是照原样显示
php代码:
<?php
$str=”<h1>php</h1>”;
echo “被解释过的: “.$str.”<br>经过处理的:”;
echo htmlentities(nl2br($str));
?>
8:怎么在函数里取得函数外的变量值
php代码:
<?php
$a=”php”;
foo();
function foo()
{
global $a;//删除这里看看是什么结果
echo “$a”;
}
?>