Hướng dẫn how to check session start or not in php - cách kiểm tra phiên bắt đầu hay không trong php
Tôi có một tệp PHP đôi khi được gọi từ một trang đã bắt đầu một phiên và đôi khi từ một trang không bắt đầu phiên. Do đó, khi tôi có 8 trên tập lệnh này, đôi khi tôi nhận được thông báo lỗi cho "phiên đã bắt đầu". Vì vậy, tôi đã đặt các dòng sau: Show
Nhưng lần này tôi nhận được thông báo cảnh báo này:
Có cách nào tốt hơn để kiểm tra xem phiên đã bắt đầu không? Nếu tôi sử dụng 9, nó sẽ làm cho mọi thứ hoạt động đúng và chỉ tắt các cảnh báo?
ngẫu nhiên 9.65610 Huy hiệu vàng68 Huy hiệu bạc79 Huy hiệu đồng10 gold badges68 silver badges79 bronze badges Đã hỏi ngày 6 tháng 6 năm 2011 lúc 9:00Jun 6, 2011 at 9:00
2 Cách được đề xuất cho các phiên bản của PHP> = 5.4.0, Php 7, Php 8PHP >= 5.4.0 , PHP 7, PHP 8
Tham khảo: http://www.php.net/manual/en/function.session-status.php Đối với các phiên bản của PHP <5.4.0PHP < 5.4.0
Đã trả lời ngày 30 tháng 8 năm 2013 lúc 22:20Aug 30, 2013 at 22:20
Đáng yêulovelyramos 9.1891 Huy hiệu vàng16 Huy hiệu bạc18 Huy hiệu đồng1 gold badge16 silver badges18 bronze badges 6 Đối với các phiên bản của PHP trước PHP 5.4.0:
Mặc dù vậy, IMHO, bạn thực sự nên nghĩ về việc tái cấu trúc mã quản lý phiên của mình nếu bạn không biết có bắt đầu phiên hay không ... Điều đó nói rằng, ý kiến của tôi là chủ quan, và có những tình huống (ví dụ được mô tả trong các bình luận dưới đây) nơi có thể không thể biết liệu phiên được bắt đầu. Đã trả lời ngày 6 tháng 6 năm 2011 lúc 9:06Jun 6, 2011 at 9:06
AlexalexAlex 3.0193 huy hiệu vàng21 Huy hiệu bạc46 Huy hiệu đồng3 gold badges21 silver badges46 bronze badges 8 Php 5.4 đã giới thiệu session_status (), đáng tin cậy hơn là dựa vào 0.Hãy xem xét đoạn trích sau:
Vì vậy, để kiểm tra xem một phiên được bắt đầu, cách được đề xuất trong Php 5.4 bây giờ:
Đã trả lời ngày 28 tháng 10 năm 2012 lúc 9:07Oct 28, 2012 at 9:07
BenmorelbenmorelBenMorel 32,8K48 Huy hiệu vàng173 Huy hiệu bạc305 Huy hiệu đồng48 gold badges173 silver badges305 bronze badges 3 Bạn có thể làm điều này, và nó thực sự dễ dàng.
Dharman ♦♦ 28.2K21 Huy hiệu vàng75 Huy hiệu bạc127 Huy hiệu đồng21 gold badges75 silver badges127 bronze badges Đã trả lời ngày 28 tháng 3 năm 2013 lúc 14:25Mar 28, 2013 at 14:25
Miyurumiyurumiyuru 1.09111 Huy hiệu bạc19 Huy hiệu đồng11 silver badges19 bronze badges 2
Đã trả lời ngày 12 tháng 4 năm 2015 lúc 7:34Apr 12, 2015 at 7:34
k.bonk.bonk.bon 3882 Huy hiệu bạc9 Huy hiệu Đồng2 silver badges9 bronze badges 0 Trước PHP 5.4, không có cách nào đáng tin cậy để biết ngoài việc đặt cờ toàn cầu. Consider:
Or:
Vì vậy, trước PHP 5.4, bạn nên đặt Boolean toàn cầu. Đã trả lời ngày 11 tháng 5 năm 2013 lúc 14:20May 11, 2013 at 14:20
y oy oy o 1.1339 huy hiệu bạc14 Huy hiệu đồng9 silver badges14 bronze badges 0 Đối với tất cả phiên bản PHP 0Đã trả lời ngày 12 tháng 10 năm 2014 lúc 16:23Oct 12, 2014 at 16:23
Supersuphotsupersuphotsupersuphot 5464 Huy hiệu bạc8 Huy hiệu Đồng4 silver badges8 bronze badges 1 Kiểm tra điều này : 1Nguồn http://php.net Đã trả lời ngày 22 tháng 3 năm 2015 lúc 10:39Mar 22, 2015 at 10:39
ElshanelshanElshan 6.8484 Huy hiệu vàng66 Huy hiệu bạc102 Huy hiệu Đồng4 gold badges66 silver badges102 bronze badges 0 Sử dụng session_id (), nó trả về một chuỗi trống nếu không được đặt. Nó đáng tin cậy hơn so với kiểm tra 1. 2
Benmorel 32,8K48 Huy hiệu vàng173 Huy hiệu bạc305 Huy hiệu đồng48 gold badges173 silver badges305 bronze badges Bạn có thể làm điều này, và nó thực sự dễ dàng.Jun 6, 2011 at 9:07
3Dharman ♦ 28.2K21 Huy hiệu vàng75 Huy hiệu bạc127 Huy hiệu đồngJan 2, 2015 at 7:01
Đã trả lời ngày 28 tháng 3 năm 2013 lúc 14:25Mahesh Cheliya Miyurumiyuru1 gold badge16 silver badges21 bronze badges 1.09111 Huy hiệu bạc19 Huy hiệu đồng 4Đã trả lời ngày 12 tháng 4 năm 2015 lúc 7:34Feb 7, 2015 at 1:04
3882 Huy hiệu bạc9 Huy hiệu ĐồngDustin Poissant Trước PHP 5.4, không có cách nào đáng tin cậy để biết ngoài việc đặt cờ toàn cầu.1 gold badge18 silver badges28 bronze badges Vì vậy, trước PHP 5.4, bạn nên đặt Boolean toàn cầu. 5Đã trả lời ngày 11 tháng 5 năm 2013 lúc 14:20Dec 27, 2013 at 20:48
2 y oy o 61.1339 huy hiệu bạc14 Huy hiệu đồngMar 26, 2013 at 23:23
Đối với tất cả phiên bản PHP Đã trả lời ngày 12 tháng 10 năm 2014 lúc 16:23 Supersuphotsupersuphot 5464 Huy hiệu bạc8 Huy hiệu Đồng Kiểm tra điều này : Nguồn http://php.net 7
Đã trả lời ngày 22 tháng 3 năm 2015 lúc 10:39 Elshanelshan1 gold badge19 silver badges45 bronze badges 6.8484 Huy hiệu vàng66 Huy hiệu bạc102 Huy hiệu ĐồngJan 30, 2019 at 18:22
Sử dụng session_id (), nó trả về một chuỗi trống nếu không được đặt. Nó đáng tin cậy hơn so với kiểm tra 1. 8Benmorel Đã trả lời ngày 6 tháng 6 năm 2011 lúc 9:07Sep 28, 2013 at 6:27
hy vọng nó giúp ! ACTIONS:
Điều này sẽ hoạt động cho tất cả các phiên bản PHP. Nó xác định phiên bản PHP, sau đó kiểm tra xem phiên có bắt đầu dựa trên phiên bản PHP không. Sau đó, nếu phiên không bắt đầu, nó bắt đầu.openSession() 9Đã trả lời ngày 7 tháng 2 năm 2015 lúc 1:04Apr 15, 2016 at 17:07 0Trên thực tế, bây giờ đã quá muộn để giải thích nó ở đây dù sao nó đã được giải quyết. Đây là một tệp .INC của một trong những dự án của tôi, nơi bạn định cấu hình menu cho một nhà hàng bằng cách chọn một món ăn và loại bỏ/thêm hoặc thay đổi đơn đặt hàng. Máy chủ mà tôi đang làm việc không có phiên bản thực tế nên tôi đã làm cho nó linh hoạt hơn. Tùy thuộc vào các tác giả muốn sử dụng và dùng thử. Đã trả lời ngày 27 tháng 4 năm 2016 lúc 16:00Apr 27, 2016 at 16:00
ThiELICYTHIELICIOUSThielicious 3,8162 huy hiệu vàng24 Huy hiệu bạc35 Huy hiệu đồng2 gold badges24 silver badges35 bronze badges 0 Đoạn mã này có hoạt động cho bạn không? 1Đã trả lời ngày 28 tháng 6 năm 2017 lúc 3:38Jun 28, 2017 at 3:38
NiroshanjniroshanjNiroshanJ 5581 Huy hiệu vàng5 Huy hiệu bạc19 Huy hiệu đồng1 gold badge5 silver badges19 bronze badges Đây là những gì tôi sử dụng để xác định xem một phiên đã bắt đầu. Bằng cách sử dụng trống và isset như sau: 2
Marcello B. 3.94211 Huy hiệu vàng46 Huy hiệu bạc62 Huy hiệu Đồng11 gold badges46 silver badges62 bronze badges Đã trả lời ngày 6 tháng 10 năm 2017 lúc 17:00Oct 6, 2017 at 17:00
RotimirotimiRotimi 4.7154 Huy hiệu vàng17 Huy hiệu bạc27 Huy hiệu đồng4 gold badges17 silver badges27 bronze badges 0 Bạn nên tổ chức lại mã của mình để bạn gọi 8 chính xác sau khi thực hiện trên mỗi trang.Đã trả lời ngày 6 tháng 6 năm 2011 lúc 9:07Jun 6, 2011 at 9:07
SamtsamtSamT 10.2k2 Huy hiệu vàng30 Huy hiệu bạc39 Huy hiệu đồng2 gold badges30 silver badges39 bronze badges 5 PHP_Version_id có sẵn kể từ Php 5.2.7, vì vậy hãy kiểm tra điều này trước và nếu cần, hãy tạo nó. 9 có sẵn kể từ Php 5.4, vì vậy chúng tôi cũng phải kiểm tra điều này: 3Đã trả lời ngày 25 tháng 12 năm 2015 lúc 17:06Dec 25, 2015 at 17:06
Dựa trên thực tế của tôi, trước khi truy cập 0, bạn cần gọi 4 mỗi lần để sử dụng tập lệnh. Xem liên kết dưới đây để biết hướng dẫn sử dụng.http://php.net/manual/en/function.session-start.php Đối với tôi, ít nhất 4 đang khó hiểu như một cái tên. Một 3 có thể rõ ràng hơn.
4b0 20.8K30 Huy hiệu vàng93 Huy hiệu bạc137 Huy hiệu đồng30 gold badges93 silver badges137 bronze badges Đã trả lời ngày 13 tháng 5 năm 2018 lúc 20:28May 13, 2018 at 20:28
0 Tôi đã kết thúc với kiểm tra gấp đôi trạng thái. Php 5.4+ 4Đã trả lời ngày 14 tháng 8 năm 2018 lúc 18:03Aug 14, 2018 at 18:03
Leo Tahkleo TahkLeo Tahk 4001 huy hiệu vàng4 Huy hiệu bạc14 Huy hiệu đồng1 gold badge4 silver badges14 bronze badges Bạn có thể sử dụng giải pháp sau để kiểm tra xem phiên PHP có bắt đầu không: 5
Cấp Miller 25.6K16 Huy hiệu vàng138 Huy hiệu bạc155 Huy hiệu đồng16 gold badges138 silver badges155 bronze badges Đã trả lời ngày 9 tháng 9 năm 2018 lúc 11:23Sep 9, 2018 at 11:23
1 6
Tunaki 128K45 Huy hiệu vàng323 Huy hiệu bạc406 Huy hiệu Đồng45 gold badges323 silver badges406 bronze badges Đã trả lời ngày 16 tháng 12 năm 2015 lúc 9:35Dec 16, 2015 at 9:35
Thay thế 4 bằng: 7
Đã trả lời ngày 17 tháng 8 năm 2016 lúc 5:11Aug 17, 2016 at 5:11
1 Làm thế nào để bạn kiểm tra phiên PHP được bắt đầu?Nếu phiên không bắt đầu mã này ở trên sẽ luôn bắt đầu phiên trong tập lệnh PHP ... 0 - PHP_Session_Disables: Các phiên hiện đang bị vô hiệu hóa .. 1 - PHP_Session_None: Phiên được bật, nhưng không có phiên nào được bắt đầu .. 2 - PHP_Session_Active: Phiên được bật và phiên đã được bắt đầu .. Làm thế nào để bạn kiểm tra xem phiên có hoạt động hay không?session_status () được sử dụng để trả về trạng thái phiên hiện tại. is used to return the current session status.
Làm thế nào tôi có thể cho biết khi nào một phiên được tạo?Bạn có thể kiểm tra xem một biến đã được đặt trong phiên của người dùng bằng cách sử dụng function isset (), vì bạn sẽ có một biến bình thường.Vì $ _Session SuperGlobal chỉ được khởi tạo khi session_start () đã được gọi, bạn cần gọi session_start () trước khi sử dụng isset () trên biến phiên.using the function isset(), as you would a normal variable. Because the $_SESSION superglobal is only initialised once session_start() has been called, you need to call session_start() before using isset() on a session variable.
Hàm php session_start () và session_destroy () là gì?Chức năng session_destroy (): Nó phá hủy toàn bộ phiên Thay vì phá hủy các biến.KHEN Session_Start () được gọi, PHP đặt cookie phiên trong trình duyệt.Chúng ta cũng cần xóa cookie để phá hủy hoàn toàn phiên.Ví dụ: Ví dụ này được sử dụng để phá hủy phiên. When session_start() is called, PHP sets the session cookie in browser. We need to delete the cookies also to completely destroy the session. Example: This example is used to destroying the session. |