Tôi có đoạn mã sau
public function is_logged_in[]
{
if[isset[$_SESSION['userSession']]]
{
return true;
}
}
if[$reg_user->is_logged_in[]!=""]//I don't understand this evaluation
{
$reg_user->redirect['home.php'];
}
Từ sự hiểu biết hạn chế của tôi, hàm is_logged_in[]
đang trả về giá trị boolean và điều kiện trên dòng tôi đã nhận xét là kiểm tra xem giá trị được trả về nó không bằng một chuỗi trống. Đây có phải là cách làm đúng không? Nếu ai đó có thể giải thích những gì Tiếp tục, tôi sẽ rất vui. Tôi là người mới bắt đầu vì vậy hãy tha thứ cho tôi nếu câu hỏi của tôi hơi ngớ ngẩn.
Đã hỏi ngày 3 tháng 3 năm 2017 lúc 10:48Mar 3, 2017 at 10:48
Trong chức năng của bạn, is_logged_in
có hai trường hợp:
- Nếu phiên phiên, nó trả về true [boolean]True[boolean]
- Nếu phiên không được đặt, chức năng sẽ trả về nullnull
Điểm quan trọng cần hiểu ở đây là "giá trị boolean không bằng chuỗi trống"
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
Giải pháp khả thi cho bạn
- Xử lý trường hợp khác trong chức năng và
return false
- Sử dụng chức năng trống
if[!empty[$reg_user->is_logged_in[]]]
Từ hướng dẫn:
Những điều sau đây được coi là trống rỗng:
- "" [một chuỗi trống]
- 0 [0 như một số nguyên]
- "0" [0 dưới dạng chuỗi]
- VÔ GIÁ TRỊ
- SAI
- mảng [] [một mảng trống]
- var $ var; [một biến được khai báo, nhưng không có giá trị trong một lớp]
Tôi hy vọng điều này sẽ giúp bạn hiểu.
Đã trả lời ngày 3 tháng 3 năm 2017 lúc 11:11Mar 3, 2017 at 11:11
NaincynaincyNaincy
2.9031 Huy hiệu vàng12 Huy hiệu bạc21 Huy hiệu đồng1 gold badge12 silver badges21 bronze badges
1
Nếu bạn muốn kiểm tra xem kết quả của $reg_user->is_logged_in[]
có phải là một chuỗi trống không, bạn phải sử dụng điều này:string, you have to use this:
if [$reg_user->is_logged_in[] !== ""]
Sự so sánh ba lần đảm bảo rằng loại cũng giống nhau.
Ví dụ, ['' == false]
sẽ trả về true, nhưng ['' === false]
sẽ trả về sai.
Đã trả lời ngày 3 tháng 3 năm 2017 lúc 10:59Mar 3, 2017 at 10:59
3
Geza tại Turigigeza Dot Com ¶bool expresses a truth value. It can be either
0 or var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
1. var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
Mike652638 tại QQ Dot Com ¶
1 năm trướcbool literal, use the constants
0 or var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
1. Both are case-insensitive. var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
4Fyrye tại Torntech dot combool value is passed on to a control structure.
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
512 năm trước
Oscar tại Oveas dot com ¶bool, use the
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
6 or var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
7 casts. However, in most cases the cast is
unnecessary, since a value will be automatically converted if an operator, function or control structure requires a bool argument. Xem thêm Loại tung hứng.
Khi chuyển đổi sang BOOL, các giá trị sau được coi là
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
1:bool, the following values are considered var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
1: - chính boolean
1var_dump[true != '']; // true {As boolean not equal to empty string; return true} var_dump[null != '']; // false
1 itselfvar_dump[true != '']; // true {As boolean not equal to empty string; return true} var_dump[null != '']; // false
- Số nguyên 0 [không]
- Phao 0,0 và -0,0 [không]
- Chuỗi trống và chuỗi "0"
- một mảng có phần tử không
- Loại NULL đặc biệt [bao gồm các biến số không đặt]
- Các đối tượng SimplexML được tạo từ các yếu tố trống không được quy kết, tức là các phần tử không có trẻ em cũng không thuộc tính.
Mọi giá trị khác được coi là ____10 [bao gồm mọi tài nguyên và
if [$reg_user->is_logged_in[] !== ""]
1].var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
0 [including any resource and if [$reg_user->is_logged_in[] !== ""]
1]. Cảnh báo
if [$reg_user->is_logged_in[] !== ""]
2 được coi là var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
0, giống như bất kỳ số khác không khác [dù là âm hay dương]!var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
0, like any other non-zero [whether negative or positive] number! if [$reg_user->is_logged_in[] !== ""]
4Fred Koschara ¶
9 năm trước
if [$reg_user->is_logged_in[] !== ""]
5if [$reg_user->is_logged_in[] !== ""]
6if [$reg_user->is_logged_in[] !== ""]
7if [$reg_user->is_logged_in[] !== ""]
8if [$reg_user->is_logged_in[] !== ""]
9is_logged_in[]
0
is_logged_in[]
1
is_logged_in[]
2
Mark Simon ¶ ¶
5 năm trước
is_logged_in[]
3
is_logged_in[]
4
is_logged_in[]
5
is_logged_in[]
6
is_logged_in[]
7
is_logged_in[]
2Quản trị viên tại Eexit Dot Fr ¶ ¶
13 năm trước
is_logged_in[]
9
is_logged_in
0
is_logged_in
1
is_logged_in
2Goran77 tại Fastmail Dot FM ¶ ¶
6 năm trước
is_logged_in
3
is_logged_in
4
is_logged_in
5
is_logged_in
6
is_logged_in[]
2Terminatorul tại Gmail Dot Com ¶ ¶
15 năm trước
is_logged_in
8
is_logged_in
9
is_logged_in[]
2Steve ¶ ¶
14 năm trước
return false
1
return false
2
return false
3
return false
4
is_logged_in[]
2artktec tại gmail dot com ¶ ¶
15 năm trước
return false
6
return false
7
return false
8
return false
9
if[!empty[$reg_user->is_logged_in[]]]
0
return false
9
if[!empty[$reg_user->is_logged_in[]]]
2
is_logged_in[]
2Steve ¶ ¶
14 năm trước
if[!empty[$reg_user->is_logged_in[]]]
4
if[!empty[$reg_user->is_logged_in[]]]
5
if[!empty[$reg_user->is_logged_in[]]]
6
if[!empty[$reg_user->is_logged_in[]]]
7
if[!empty[$reg_user->is_logged_in[]]]
8
if[!empty[$reg_user->is_logged_in[]]]
9
$reg_user->is_logged_in[]
0
$reg_user->is_logged_in[]
1
is_logged_in[]
2artktec tại gmail dot com ¶ ¶
14 năm trước
$reg_user->is_logged_in[]
3
$reg_user->is_logged_in[]
4
$reg_user->is_logged_in[]
5
$reg_user->is_logged_in[]
6artktec tại gmail dot com ¶ ¶
6 năm trước
$reg_user->is_logged_in[]
7
$reg_user->is_logged_in[]
8
is_logged_in[]
2Mark Simon ¶ ¶
6 năm trước
['' == false]
0
['' == false]
1
is_logged_in[]
25 năm trước ¶
Wackzingo ¶
['' == false]
3
['' == false]
4
['' == false]
5
['' == false]
6
['' == false]
7
['' == false]
8
is_logged_in[]
2Marklgr ¶ ¶
Richie Dot Hayward tại Gmail Dot Com ¶
['' === false]
0
['' === false]
1
['' === false]
2
['' === false]
3
['' === false]
4
['' === false]
5
['' === false]
6
['' === false]
7
is_logged_in[]
2Geza tại Turigigeza Dot Com ¶ ¶
9 năm trước
['' === false]
9
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
00is_logged_in[]
2Mike652638 tại QQ Dot Com ¶ ¶
1 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
02var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
03is_logged_in[]
2Fyrye tại Torntech dot com ¶
12 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
05Oscar tại Oveas dot com ¶ ¶
11 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
06emanuelemiaciulla [at] gmail [dot] com ¶ ¶
7 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
07var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
08var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
09var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
10Biểu tượng ¶ ¶
14 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
11var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
12var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
13var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
14artktec tại gmail dot com ¶ ¶
9 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
15Mike652638 tại QQ Dot Com ¶ ¶
7 năm trước
var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
16var_dump[true != '']; // true {As boolean not equal to empty string; return true}
var_dump[null != '']; // false
17is_logged_in[]
2