大多编程语言中都会有三目运算符的?:这种形式的下面我们来看看三目运算符实例吧。
$safe = $input ? $input : 'default';
这句代码有些地方有点多余,所以中间的值已经是可选的了。现在只需使用ifsetor语法就可以了,就像以下代码这样。
$safe = $input ?: 'default';
在处理输入数据时常见的操作之一就是在输入数据不存在或者校验失败的情况下,使用三目运算符提供一个默认值。你大概见过与以下类似的代码。
哈哈简单吧,好了费话不说多了推荐纵我的好朋友吧?:
php cookie 用法
$time = time() + 300; //5分钟过期
$code = md5($string . $time . $salt);
setcookie('check_time', $time);
setcookie('code', $code);
//验证部分
$TIME = time();
if($check_time < $TIME)//如果服务器时间比验证时间大,算过期
//expire过期
if(md5($string . $check_time . $salt) !== $code)
//错误
其实这种方法相对好一点,因为过期不能提交了,但是过期之前还是可以无限提交的
$str = '计算机业(IT)-系统分析员';
if( strrpos($str,'-')!=false )
{
$array = explode('-',$str);
if( is_array( $array ) )
{
print_r($array);
}
else
{
echo $str;
}
}
else
{
echo'strrpos没找到相关存在的字符';
}
function insert_file($file,$replace=''){
global $Charset;
$readfiles=read_file($file);
if($replace){
$readfiles=str_replace('$timestamp',"$timestamp",$readfiles);
}
$detail=explode("n",$readfiles);
$count=count($detail);
for($j=0;$j<$count;$j++){
$ck=substr($detail[$j],0,4);
if( ereg("#",$ck)||ereg("--",$ck) ){
continue;
}
$array[]=$detail[$j];
}
$read=implode("n",$array);
$sql=str_replace("r",'',$read);
$detail=explode(";n",$sql);
$count=count($detail);
for($i=0;$i<$count;$i++){
$sql=str_replace("r",'',$detail[$i]);
$sql=str_replace("n",'',$sql);
$sql=trim($sql);
if($sql){
if(eregi("CREATE TABLE",$sql)){
$mysqlV=mysql_get_server_info();
$sql=preg_replace("/DEFAULT CHARSET=([a-z0-9]+)/is","",$sql);
$sql=preg_replace("/TYPE=MyISAM/is","ENGINE=MyISAM",$sql);
if($mysqlV>'4.1'){
$sql=str_replace("ENGINE=MyISAM"," ENGINE=MyISAM DEFAULT CHARSET=$Charset ",$sql);
}
}
$query=mysql_query($sql);
if (!$query) die("数据库出错:$sql");
$check++;
}
}
return $check;
}
function read_file($filename,$method="rb"){
if($handle=@fopen($filename,$method)){
@flock($handle,LOCK_SH);
$filedata=@fread($handle,@filesize($filename));
@fclose($handle);
}
return $filedata;
}
explode(符号,字符)
由explode处理的字符最后会分成一个数组形式保存了,下面我们来看一个实例。
$t ='9,133,儋县^14,203,长沙^14,206,衡阳';
$ar = explode(',',$a);
print_r($ar);
//上面必须用print_r如果用echo只会输出array哦,
得出结果为:
Array
(
[0] => 9,133,儋县
[1] => 14,203,长沙
[2] => 14,206,衡阳
)
下面来看看implode 用法
implode($array,$plodestr)
看实例
$v = implode($ar,'^');
echo $v;
结果:
9,133,儋县^14,203,长沙^14,206,衡阳'