Home > Article > Backend Development > Writing of PHP jump function and a general operation prompt class_PHP tutorial
PHP jump, which redirects the browser to a specified URL, is a very common function. This function also has some detailed requirements, such as how many seconds to wait before jumping, whether to use JavaScript to implement the jump, etc. The following jump method takes a lot into consideration and is parameterized so that it can be used in specific projects.
<?php /** * 重定向浏览器到指定的 URL * * @param string $url 要重定向的 url * @param int $delay 等待多少秒以后跳转 * @param bool $js 指示是否返回用于跳转的 JavaScript 代码 * @param bool $jsWrapped 指示返回 JavaScript 代码时是否使用 <mce:script type="text/javascript"><!-- 标签进行包装 * @param bool $return 指示是否返回生成的 JavaScript 代码 */ function redirect($url, $delay = 0, $js = false, $jsWrapped = true, $return = false) { $delay = (int)$delay; if (!$js) { if (headers_sent() || $delay > 0) { echo <<<EOT <html> <head> <meta http-equiv="refresh" content="{$delay};URL={$url}" /> </head> </html> EOT; exit; } else { header("Location: {$url}"); exit; } } $out = ''; if ($jsWrapped) { $out .= '<script language="JavaScript" type="text/javascript">'; } $url = rawurlencode($url); if ($delay > 0) { $out .= "window.setTimeOut(function () { document.location='{$url}'; }, {$delay});"; } else { $out .= "document.location='{$url}';"; } if ($jsWrapped) { $out .= ' // --></mce:script>'; } if ($return) { return $out; } echo $out; exit; } ?>
Writing a general operation prompt class
When designing some systems, it is often necessary to provide users with operational prompts. This kind of prompt is very important. Friendly prompts can improve the user's favorability of the system. There are many designs for operation tips. The following is a simple plan of mine, which is just an introduction.
<?php class Tips{ private $tips; static private $_instance; private function __construct($string, $url) { $this->tips = " <meta http-equiv=refresh content=4;url=$url> <div style='border:1px solid #B4D8F4; width:320px; height:120px; margin:0 auto; font-size:12px;'> <div style='background-color:#CDE6F9; height:20px;'></div> <div align='center' style='font-size:14px; font-weight:bold; margin:20px 0 20px 0;'>$string</div> <div align='center'>返回 (4秒后自动返回)</div> </div> "; return $this->tips; } public function __toString(){ return $this->tips; } private function __clone(){} public static function get_tips($string, $url) { if( FALSE == (self::$_instance instanceof self) ) { self::$_instance = new self($string, $url); } return self::$_instance; } } ?>
The function of this class is very simple, it is to jump to a certain link after 4 seconds, or click to jump to that link.
__toString() This function is very important, it can realize string output of class objects.
How to use this class?
include_once("./tips_class.php"); $hit = "错误:两次输入的密码不一致"; $jump = "../login.php"; echo $tips = Tips::get_tips($hit, $jump);