Session usage PHP 4.0 has a long-awaited feature, which is PHP's session support. In contrast, PHP 3.0 users have to use third-party libraries or do not have this functionality at all. The lack of session support is one of PHP's biggest flaws and its most criticized aspect. However, as session support has been part of PHP 4.0 since early beta versions, this obstacle has disappeared. With session support, you can maintain user-specific variables during a user's visit to a website without having to set multiple cookies, use hidden form fields, or store information in a database that you may frequently connect to. Starting a session on a page tells the PHP engine that you either want to start a session (if there has not been one before) or continue the current session: session_start(); Starting a session will send an identification string to the user through a cookie (such as 940f8b05a40d5119c030c9c7745aead9 ); on the server side, a temporary file matching this will be created. In the above example, its name is like this: sess_940f8b05a40d5119c030c9c7745aead9. This file contains registered session variables and their assignments. User access counters are the most common example of using sessions: Start your PHP module and make sure the PHP code is the first line of the file: no whitespace, no HTML output, etc. This is because when the session function emits a file header, if you send blanks or HTML code before the session_start() function, the system will report an error. // if a session does not yet exist for this user, start one session_start(); 接下来,注册一个名为count的变量。 session_register(count); 注册变量就等于告诉了PHP:只要会话存在,一个名叫count的变量也就同时存在。目前这个变量还没有赋值。不过,如果你对它进行加1运算的话,该值即可被赋值为1: $count++; 把以上各行代码一起考虑,实际上你已经启动了一个会话(如果先前没有)、为某个用户分配了会话id、注册了名为count的变量并把$count加1以表示用户首次访问页面: 要显示用户在当前会话下访问页面的次数,你只要打印出$count的值即可: echo "
You've been here $count times.
"; The entire access counter code is as follows: session_start(); session_register(count ); $count++; echo " session_start(); session_register(count); $count++; echo "
You've been here $count times.
"; ?> If you reload the above script, you can observe that the count value increases. Isn't it interesting? You can also register in the session. Arrays. Suppose you have an array called $faves: $faves = array (chocolate,coffee,beer,linux); You can register the array like any other single variable: session_register(faves); Indexing arrays and indexing other single variables There is no difference, such as $faves. If your user wants to show his hobbies on a page of the website, then you can register his favorite things as a session variable named $faves, and then you can use it on other pages. Print these values on the page: session_start(); echo "My user likes:
"; while (list(,$v) = each ($faves)) { echo "- $v"; } echo "
"; ?> This is What you're going to get: A nice list of user hobbies. Session variables cannot be overwritten by query strings. This means that you cannot type a directive such as http:///www.yourdomain.com/yourscript.php?count=56 to assign a new value to the registered session variable $count. This is very important for security reasons: you can only modify or delete (unregistered) session variables from server-side scripts. If you want to completely delete a session variable, you can unregister the variable from the system: session_unregister(count); To completely delete a session, such as pressing the Logout button, you can write the following code: session_destroy(); Using sessions to store variable values saves us from the pain of writing database processing code, so that it does not excessively increase the load on the system, and also reduces the scope of use of proprietary database syntax. Besides, you You no longer have to send a bunch of cookies to users who visit your site. But now - you only need one cookie and one variable to get it all done. It’s really just a drop of water that reflects all the glory! It really doesn't get any simpler than this.
http://www.bkjia.com/PHPjc/531802.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/531802.htmlTechArticleSession Usage PHP 4.0 has a feature that has been long-awaited, which is PHP session (session) support. In contrast, PHP 3.0 users have to use third-party libraries or completely...