看看这句代码是什么意思 isset($file) or $file = 'index';在别人的程序中看到了这么一句代码,不明白是啥意思,有懂的解释下 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 isset — 检测变量是否设置 isset 测试变量是否赋值or是或的意思,只要有一个为真就是真 是否存在变量file 或者 变量file的值为index 请给出上下文, 只看这句话感觉meaningless. 我把上下文的代码贴出来吧 请说说这句代码的总用 而不是isset()和or的用法$session = new dsession();require DT_ROOT.'/admin/global.func.php';require DT_ROOT.'/include/post.func.php';require_once DT_ROOT.'/include/cache.func.php';//就是这句isset($file) or $file = 'index';//就是这句$_destoon_admin = isset($_SESSION['destoon_admin']) ? intval($_SESSION['destoon_admin']) : 0;if($action != 'import') admin_log();$_founder = $CFG['founderid'] == $_userid ? $_userid : 0;$_catids = $_childs = '';$_catid = $_child = array();if($file != 'login') { if($_groupid != 1 || $_admin < 1 || !$_destoon_admin) msg('', '?file=login&forward='.urlencode($DT_URL)); if(!admin_check()) { admin_log(1); $db->query("DELETE FROM {$db->pre}admin WHERE userid=$_userid AND url='?".$DT_QST."'"); msg('警告!您无权进行此操作'); }} 不是测试是否赋值 而是 是否存在这个变量$a;if(isset($a)) echo '1';$a=1;if(isset($a)) echo '1'; 这个$file应该是require DT_ROOT.'/admin/global.func.php';require DT_ROOT.'/include/post.func.php';require_once DT_ROOT.'/include/cache.func.php';文件内的 isset($file) or $file = 'index';等同于if(!isset($file)) $file = 'index';无聊人的无聊写法。 1.isset判断$file这个变量是否存在2.如果$file不存在就给它赋值'index'注意两点:1.后面是个赋值等号而不是逻辑判断(==)2.or的执行优先级低于=,=低于函数上面的语句相当于$file=isset($file)?$file:'index'; $a是在require DT_ROOT.'/admin/global.func.php';require DT_ROOT.'/include/post.func.php';require_once DT_ROOT.'/include/cache.func.php';这三个文件里定义的一个变量。这句话的意义在于检查$a是不是已经在以上的三个文件中被赋值,如果没有赋值就给它默认值'index'.这种用or连接两个表达式的表达式运行的原理是: 如果or前面的表达式为真, 后面的表达式不被执行。如果前面的表达式为假, 则后面的表达式会被执行。 怎么做数据库相连? smarty模板中字符串转化为变量名? 下载文件的代码 zip_read()问题。 求教PHP中文加密解密代码 如何将查询结果分页显示?请各位大虾给小弟个例子 sos!!!!!!,在线等!!!!!!!! 在自己做的网站上,想对新注册用户做邮件推送,用个人邮箱可以,但企业邮箱始终不行,请各路高手指教。 php字符串转换的问题 我一直想不明白的一个问题,php save files from url,页面个别元素就是获取不到!? 如何实现批量删除的效果。 php怎么跳转到登陆界面
or是或的意思,只要有一个为真就是真
$session = new dsession();
require DT_ROOT.'/admin/global.func.php';
require DT_ROOT.'/include/post.func.php';
require_once DT_ROOT.'/include/cache.func.php';
//就是这句
isset($file) or $file = 'index';
//就是这句
$_destoon_admin = isset($_SESSION['destoon_admin']) ? intval($_SESSION['destoon_admin']) : 0;
if($action != 'import') admin_log();
$_founder = $CFG['founderid'] == $_userid ? $_userid : 0;
$_catids = $_childs = '';
$_catid = $_child = array();
if($file != 'login') {
if($_groupid != 1 || $_admin < 1 || !$_destoon_admin) msg('', '?file=login&forward='.urlencode($DT_URL));
if(!admin_check()) {
admin_log(1);
$db->query("DELETE FROM {$db->pre}admin WHERE userid=$_userid AND url='?".$DT_QST."'");
msg('警告!您无权进行此操作');
}
}
不是测试是否赋值 而是 是否存在这个变量$a;
if(isset($a)) echo '1';
$a=1;
if(isset($a)) echo '1';
require DT_ROOT.'/admin/global.func.php';
require DT_ROOT.'/include/post.func.php';
require_once DT_ROOT.'/include/cache.func.php';
文件内的
等同于
if(!isset($file))
$file = 'index';无聊人的无聊写法。
2.如果$file不存在就给它赋值'index'注意两点:
1.后面是个赋值等号而不是逻辑判断(==)
2.or的执行优先级低于=,=低于函数上面的语句相当于$file=isset($file)?$file:'index';
$a是在require DT_ROOT.'/admin/global.func.php';
require DT_ROOT.'/include/post.func.php';
require_once DT_ROOT.'/include/cache.func.php';
这三个文件里定义的一个变量。
这句话的意义在于检查$a是不是已经在以上的三个文件中被赋值,如果没有赋值就给它默认值'index'.这种用or连接两个表达式的表达式运行的原理是: 如果or前面的表达式为真, 后面的表达式不被执行。如果前面的表达式为假, 则后面的表达式会被执行。