trim是用来检去掉首尾空格的,在这个地方,一点用的没有,是错误用法。
好了,我来解释下
$action= 给变量$action赋值
isset($_POST['action']) 检查$_POST['action']是否存在,存在返回true,不存在返回false
$_POST['action'] 获得POST传值
$_GET['action'] 获得GET传值
?: 的用法如下:
设$a?$b:$c,即是说,$a如果为true则返回$b,如果为false则返回$c。
逻辑是:$a是否成立?成立就返回":"前的变量,不成立就返回":"后的。
所以,该句的意思是:
判断action的POST传值是否存在,存在就返回该值赋给$action,不存在就返回action的GET传值赋给$action。
下面是题外话:
POST和GET传值是网页传值的两种方法
你可以使用表单来实现页面间的这种传值
trim是去除空格,isset($_POST['action'])?$_POST['action']:$_GET['action'])
意思是判断$_POST['action']是否存在,如果存在则用$_POST['action'],不存在则用$_GET['action'],这是个if else的简写方法
$action=trim(isset($_POST['action'])?$_POST['action']:$_GET['action']);
trim() 可以去除变量中前后的空格,
?"":"" 这个是三元运算符,意思是?前面的等式成立的话就执行?后面的语句,反之执行:后面的语句,这个运算符相当于if()...else...语句. 通常用于赋值,比如 $bool=2==3?'true':'false';