URL、表单数据、IP等处理类,url表单_PHP教程
URL、表单数据、IP等处理类,url表单
<?<span>php </span><span>class</span><span> ev { </span><span>public</span><span> $cookie; </span><span>public</span><span> $post; </span><span>public</span> $<span>get</span><span>; </span><span>public</span><span> $file; </span><span>public</span><span> $url; </span><span>public</span><span> $G; </span><span>private</span><span> $e; </span><span>public</span> function __construct(<span>) {</span><span>if</span> (ini_get(<span>'</span><span>magic_quotes_gpc</span><span>'</span><span>)) { //判断php.ini是否有<span>magic_quotes_gpc</span>过滤(转义)函数 $</span><span>get</span> = $<span>this</span>-><span>stripSlashes($_REQUEST); $post </span>= $<span>this</span>-><span>stripSlashes($_POST); $</span><span>this</span>->cookie = $<span>this</span>-><span>stripSlashes($_COOKIE); } </span><span>else</span><span> { $</span><span>get</span> =<span> $_REQUEST; $post </span>=<span> $_POST; $</span><span>this</span>->cookie =<span> $_COOKIE; } $</span><span>this</span>->file =<span> $_FILES; $</span><span>this</span>-><span>get</span> = $<span>this</span>->initData($<span>get</span><span>); $</span><span>this</span>->post = $<span>this</span>-><span>initData($post); $</span><span>this</span>->url = $<span>this</span>-><span>parseUrl(); $</span><span>this</span>->cookie = $<span>this</span>->initData($<span>this</span>-><span>cookie); } </span><span>//</span><span>解析url</span> <span>public</span><span> function parseUrl() { </span><span>if</span>(isset($_REQUEST[<span>'</span><span>route</span><span>'</span><span>])) { </span><span>return</span> explode(<span>'</span><span>-</span><span>'</span>,$_REQUEST[<span>'</span><span>route</span><span>'</span><span>]); //解析路由 } elseif(isset($_SERVER[</span><span>'</span><span>QUERY_STRING</span><span>'</span><span>])) { $tmp </span>= explode(<span>'</span><span>#</span><span>'</span>,$_SERVER[<span>'</span><span>QUERY_STRING</span><span>'</span>],<span>2</span><span>); $tp </span>= explode(<span>'</span><span>&</span><span>'</span>,$tmp[<span>0</span>],<span>2</span><span>); </span><span>return</span> explode(<span>'</span><span>-</span><span>'</span>,$tp[<span>0</span><span>]); } </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>返回$_REQUEST数组内的值</span> <span>public</span> function <span>get</span><span>($par) { </span><span>if</span>(isset($<span>this</span>-><span>get</span>[$par]))<span>return</span> $<span>this</span>-><span>get</span><span>[$par]; </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>返回$_POST数组内的值</span> <span>public</span><span> function post($par) { </span><span>if</span>(isset($<span>this</span>->post[$par]))<span>return</span> $<span>this</span>-><span>post[$par]; </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>返回URL数组中的值</span> <span>public</span><span> function url($par) { $par </span>=<span> intval($par); </span><span>if</span>(isset($<span>this</span>->url[$par]))<span>return</span> $<span>this</span>-><span>url[$par]; </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>设置COOKIE</span> <span>public</span> function setCookie($name,$value,$time=<span>3600</span><span>) { </span><span>if</span>($time)$time = TIME +<span> $time; </span><span>else</span> $time = <span>0</span><span>; </span><span>if</span><span>(CDO)setCookie(CH.$name,$value,$time,CP,CDO); </span><span>else</span><span> setCookie(CH.$name,$value,$time,CP); } </span><span>//</span><span>获取cookie</span> <span>public</span> function getCookie($par,$nohead = <span>0</span><span>) { </span><span>if</span>(isset($<span>this</span>->cookie[CH.$par]))<span>return</span> $<span>this</span>-><span>cookie[CH.$par]; elseif(isset($</span><span>this</span>->cookie[$par]) && $nohead)<span>return</span> $<span>this</span>-><span>cookie[$par]; </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>获取$_FILE</span> <span>public</span><span> function getFile($par) { </span><span>if</span>(isset($<span>this</span>->file[$par]))<span>return</span> $<span>this</span>-><span>file[$par]; </span><span>else</span> <span>return</span> <span>false</span><span>; } </span><span>//</span><span>初始化数据</span> <span>public</span><span> function initData($data) { </span><span>if</span><span>(is_array($data)) { </span><span>foreach</span>($data <span>as</span> $key =><span> $value) { </span><span>if</span>($<span>this</span>->strings->isAllowKey($key) === <span>false</span><span>) { unset($data[$key]); } </span><span>else</span><span> $data[$key] </span>= $<span>this</span>-><span>initData($value); } </span><span>return</span><span> $data; } </span><span>else</span><span> { </span><span>if</span><span>(is_numeric($data)) { </span><span>if</span>($data[<span>0</span>] === <span>0</span>)<span>return</span> $<span>this</span>->addSlashes(htmlspecialchars(str_replace(<span>"</span><span>'</span><span>"</span>,<span>"</span><span>'</span><span>"</span><span>,$data))); </span><span>if</span>(strlen($data) >= <span>11</span>)<span>return</span> $<span>this</span>->addSlashes(htmlspecialchars(str_replace(<span>"</span><span>'</span><span>"</span>,<span>"</span><span>'</span><span>"</span><span>,$data))); </span><span>if</span>(strpos($data,<span>'</span><span>.</span><span>'</span>))<span>return</span><span> floatval($data); </span><span>else</span> <span>return</span><span> intval($data); } </span><span>if</span>(is_string($data))<span>return</span> $<span>this</span>->addSlashes(htmlspecialchars(str_replace(<span>"</span><span>'</span><span>"</span>,<span>"</span><span>'</span><span>"</span><span>,$data))); </span><span>if</span>(is_bool($data))<span>return</span> (<span>bool</span><span>)$data; </span><span>return</span> <span>false</span><span>; } } </span><span>//</span><span>去除转义字符</span> <span>public</span><span> function stripSlashes($data) { </span><span>if</span><span> (is_array($data)) { </span><span>foreach</span> ($data <span>as</span> $key =><span> $value) { $data[$key] </span>= $<span>this</span>-><span>stripSlashes($value); } } </span><span>else</span><span> { $data </span>=<span> stripSlashes(trim($data)); } </span><span>return</span><span> $data; } </span><span>//</span><span>添加转义字符</span> <span>public</span><span> function addSlashes($data) { </span><span>if</span><span> (is_array($data)) { </span><span>foreach</span> ($data <span>as</span> $key =><span> $value) { $data[$key] </span>= $<span>this</span>-><span>addSlashes($value); } } </span><span>else</span><span> { $data </span>=<span> addSlashes(trim($data)); } </span><span>return</span><span> $data; } </span><span>//</span><span>获取客户端IP</span> <span>public</span><span> function getClientIp() { </span><span>if</span>(!isset($<span>this</span>->e[<span>'</span><span>ip</span><span>'</span><span>])) { </span><span>if</span> (getenv(<span>"</span><span>HTTP_CLIENT_IP</span><span>"</span>) && strcasecmp(getenv(<span>"</span><span>HTTP_CLIENT_IP</span><span>"</span>), <span>"</span><span>unknown</span><span>"</span><span>)) $ip </span>= getenv(<span>"</span><span>HTTP_CLIENT_IP</span><span>"</span><span>); </span><span>else</span> <span>if</span> (getenv(<span>"</span><span>HTTP_X_FORWARDED_FOR</span><span>"</span>) && strcasecmp(getenv(<span>"</span><span>HTTP_X_FORWARDED_FOR</span><span>"</span>), <span>"</span><span>unknown</span><span>"</span><span>)) $ip </span>= getenv(<span>"</span><span>HTTP_X_FORWARDED_FOR</span><span>"</span><span>); </span><span>else</span> <span>if</span> (getenv(<span>"</span><span>REMOTE_ADDR</span><span>"</span>) && strcasecmp(getenv(<span>"</span><span>REMOTE_ADDR</span><span>"</span>), <span>"</span><span>unknown</span><span>"</span><span>)) $ip </span>= getenv(<span>"</span><span>REMOTE_ADDR</span><span>"</span><span>); </span><span>else</span> <span>if</span> (isset($_SERVER[<span>'</span><span>REMOTE_ADDR</span><span>'</span>]) && $_SERVER[<span>'</span><span>REMOTE_ADDR</span><span>'</span>] && strcasecmp($_SERVER[<span>'</span><span>REMOTE_ADDR</span><span>'</span>], <span>"</span><span>unknown</span><span>"</span><span>)) $ip </span>= $_SERVER[<span>'</span><span>REMOTE_ADDR</span><span>'</span><span>]; </span><span>else</span><span> $ip </span>= <span>"</span><span>unknown</span><span>"</span><span>; $</span><span>this</span>->e[<span>'</span><span>ip</span><span>'</span>] =<span> $ip; } </span><span>return</span> $<span>this</span>->e[<span>'</span><span>ip</span><span>'</span><span>]; } </span><span>//</span><span>根据二级域名获取信息</span> <span>public</span><span> function getSecondDomain() { $domain </span>= $_SERVER[<span>'</span><span>HTTP_HOST</span><span>'</span><span>]; $domain </span>= str_replace(array(<span>'</span><span>com.cn</span><span>'</span>,<span>'</span><span>net.cn</span><span>'</span>,<span>'</span><span>gov.cn</span><span>'</span>,<span>'</span><span>org.cn</span><span>'</span>),<span>'</span><span>com</span><span>'</span><span>,$domain); $tmp </span>= explode(<span>'</span><span>.</span><span>'</span><span>,$domain); </span><span>if</span>(count($tmp) < <span>3</span>)<span>return</span> <span>false</span><span>; elseif(is_numeric($tmp[</span><span>0</span>]))<span>return</span> <span>false</span><span>; </span><span>else</span> <span>return</span> $tmp[<span>0</span><span>]; } } </span>?>

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

本教程演示了如何使用PHP有效地处理XML文档。 XML(可扩展的标记语言)是一种用于人类可读性和机器解析的多功能文本标记语言。它通常用于数据存储

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

字符串是由字符组成的序列,包括字母、数字和符号。本教程将学习如何使用不同的方法在PHP中计算给定字符串中元音的数量。英语中的元音是a、e、i、o、u,它们可以是大写或小写。 什么是元音? 元音是代表特定语音的字母字符。英语中共有五个元音,包括大写和小写: a, e, i, o, u 示例 1 输入:字符串 = "Tutorialspoint" 输出:6 解释 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。总共有 6 个元

PHP的魔法方法有哪些?PHP的魔法方法包括:1.\_\_construct,用于初始化对象;2.\_\_destruct,用于清理资源;3.\_\_call,处理不存在的方法调用;4.\_\_get,实现动态属性访问;5.\_\_set,实现动态属性设置。这些方法在特定情况下自动调用,提升代码的灵活性和效率。

PHP和Python各有优势,选择依据项目需求。1.PHP适合web开发,尤其快速开发和维护网站。2.Python适用于数据科学、机器学习和人工智能,语法简洁,适合初学者。

PHP在电子商务、内容管理系统和API开发中广泛应用。1)电子商务:用于购物车功能和支付处理。2)内容管理系统:用于动态内容生成和用户管理。3)API开发:用于RESTfulAPI开发和API安全性。通过性能优化和最佳实践,PHP应用的效率和可维护性得以提升。

PHP是一种广泛应用于服务器端的脚本语言,特别适合web开发。1.PHP可以嵌入HTML,处理HTTP请求和响应,支持多种数据库。2.PHP用于生成动态网页内容,处理表单数据,访问数据库等,具有强大的社区支持和开源资源。3.PHP是解释型语言,执行过程包括词法分析、语法分析、编译和执行。4.PHP可以与MySQL结合用于用户注册系统等高级应用。5.调试PHP时,可使用error_reporting()和var_dump()等函数。6.优化PHP代码可通过缓存机制、优化数据库查询和使用内置函数。7
