if ( ! ( is_page( 'login' ) || bp_is_register_page() || is_page( 'lost-password' ) || is_page( 'reset-password' ) || ( is_page( 'home' ) && ! is_user_logged_in() ) ) ) {
在源代码编辑器中将PHP语句分成多行的最佳方法是什么?我想要这样做的主要原因是为了便于阅读和维护。我想的是:
if ( ! ( is_page( 'login' )
|| bp_is_register_page()
|| is_page( 'lost-password' )
|| is_page( 'reset-password' )
|| ( is_page( 'home' )
&& ! is_user_logged_in() ) ) ) {
但这对我来说并不合适。它看起来并不“整洁”。有没有一种标准的方法可以在多行中打破长PHP语句?
答案 0 :(得分:1)
我就是这样做的。
if ( !( is_page( 'login' )
|| bp_is_register_page()
|| is_page('lost-password')
|| is_page('reset-password')
|| (is_page('home')
&& ! is_user_logged_in())))
{
//code here
}
通常情况下,我在if语句的同一行上有一个开头的花括号,但对于这样一个长if语句,将它放在自己的行上可能更具可读性。
答案 1 :(得分:0)
if (!is_page('login')
&& !bp_is_register_page()
&& !is_page('lost-password')
&& !is_page('reset-password')
&& (!is_page('home') || is_user_logged_in())
) {
答案 2 :(得分:0)
我不确定is_page是什么(假设它是一个返回字符串的函数),但是当你有多个基于相同变量的条件时,这是一个使用开关函数的绝佳机会。
switch(is_page()){
case 'lost-password':
//do things
break;
case 'reset-password':
//do things
break;
default:
//if none of cases above, do things
break;
}