有问题就有答案
Q1:自己开发的Web服务器如何解析php文件
nginx apahce 都是不能直接解析php文件的,通过本机的9000端口来执行PHP文件,当http拿到本地文件并且后缀为.php时,将此文件返还给php,让php来解释,再执行返回,GET和POST是php中的常量,直接就能拿到。--你服务器开发 了能给我看看么?
Q2:php脚本被服务器解析之后还看得到源码?
由于 字符串是不可更改的 ,而且它们是在字符串池中创建的,这些字符串使用了 堆内存 ,当应用在生产环境中运行在ERROR级别的时候,字符串在大多数情况下就不是必须的,比如DEBUG语句里的字符串就不是必须的。通过使用SLF4J,你可以延迟字符串的创建到运行时刻,这意味着只有在需要字符串的时候才创建它。
Q3:php代码加密后,服务器是如何解析的,怎样解
看是怎么加密的了,MD5是解不了的说能解的都是自己做的数据库匹配。下面这个是常用的加密解密方法<?php/*** 字符串加密、解密函数** @param string $txt 字符串* @param string $operation ENCODE为加密,DECODE为解密,可选参数,默认为ENCODE,* @param string $key 密钥:数字、字母、下划线* @param string $expiry 过期时间* @return string*/function sys_auth($string, $operation = "ENCODE", $key = "", $expiry = 0) { $ckey_length = 4; $key = md5($key != "" ? $key : C("COOKIE_AUTH_KEY")); $keya = md5(substr($key, 0, 16)); $keyb = md5(substr($key, 16, 16)); $keyc = $ckey_length ? ($operation == "DECODE" ? substr($string, 0, $ckey_length): substr(md5(microtime()), -$ckey_length)) : ""; $cryptkey = $keya.md5($keya.$keyc); $key_length = strlen($cryptkey); $string = $operation == "DECODE" ? base64_decode(strtr(substr($string, $ckey_length), "-_", "+/")) : sprintf("%010d", $expiry ? $expiry + time() : 0).substr(md5($string.$keyb), 0, 16).$string; $string_length = strlen($string); $result = ""; $box = range(0, 255); $rndkey = array(); for($i = 0; $i <= 255; $i++) { $rndkey[$i] = ord($cryptkey[$i % $key_length]); } for($j = $i = 0; $i < 256; $i++) { $j = ($j + $box[$i] + $rndkey[$i]) % 256; $tmp = $box[$i]; $box[$i] = $box[$j]; $box[$j] = $tmp; } for($a = $j = $i = 0; $i 0) && substr($result, 10, 16) == substr(md5(substr($result, 26).$keyb), 0, 16)) { return substr($result, 26); }else{ return ""; } }else{ return $keyc.rtrim(strtr(base64_encode($result), "+/", "-_"), "="); }}?>
Q4:php代码加密后,服务器是如何解析的,怎样解密代码
这取决于你使用的加密方式。如果是md5,基本没有解决办法。
Q5:php中的服务器是什么意思?有什么作用?干什么的?
含义:一般指带有apachephpmysql的服务器/计算机。功能:发布PHP网站最基本的架构之一。用途:可以让PHP程序/网站运行。PHP是一种用于制作动态网页的服务器端脚本语言。你通过PHP和HTML创建页面。当访问者打开网页时,服务器会处理PHP指令,然后将处理结果发送到访问者的浏览器,就像ASP或ColdFusion一样。然而,PHP与ASP或ColdFusion的不同之处在于它是一个跨平台的开源代码。PHP可以在Windows NT和许多不同的Unix版本中执行。它也可以编译成Apache模块或CGI二进制文件。
Q6:用PHP在后台解析从服务器中请求来的乱七八糟的JSON数据
?phpheader(" Content-type : text/html;charset=utf-8 ");$json="{"error":0," status":"success "," date":"2015-12-08 "," results " :[{ " current city " : " Qing "," pm25":"128 "," Index " :[{ " title " 3: "敷料"," zs " : " colder "," tipt " : "敷料指数"和"年老体弱的人应该穿大衣、羊毛衫和毛衣。},{"title": "洗车"," zs": "更适合"," tipt": "洗车指数"和" des": "更适合洗车。第二天不会下雨,也不会刮风。一辆新车至少可以使用一天。},{"title":" Tourism "," zs " : " fitness "," tipt":" Tourism Index "," des": "天气晴好,风有点大,但温度适宜,所以是个好天。适合旅行,可以充分享受大自然的无限风光。},{"title": "寒冷"," zs": "更容易感冒"," tipt": "寒冷指数"," des": "天气转冷,空气湿度高,更容易感冒,体质较弱的朋友要注意妥善防护。},{"title":" Sports "," zs": "比较适合"," tipt":" Sports Index "和" des": "天气比较好,但考虑到风大气温低,建议大家在室内锻炼。如果在户外运动,请注意防风,适当增减衣物。},{"title": "紫外线强度"," zs": "中等"," tipt": "紫外线强度指数"和" des": "属于中等强度紫外线辐射天气。外出时建议佩戴防晒系数高于15和PA的防晒护肤品,戴帽子和墨镜。}]," weather _ data " :[{ " date " : " 12月8日星期二,实时"," wind": "偏南风3-4 "," temperature" 3360" 10 ~ 7"},{ " date " 3360 " dayPictureUrl " : " http 3360//API map。com/images/weather/day/yin.png "," night pictureurl " : " http ://API . map.com/images/Weather/night/yin . png ",Weather": "多云"," wind": "东南风3-4级"," temperature" 3360" 11 ~ 8"},{"date" 3360 "星期四"," dayPictureUrl " : " http 3360//API map。com/images/weather/day/oyun . png ",Night picture URL " : " http ://API . map.com/images/weather/Night/oyun . png "," weather" : "多云"," wind": "东风4-5 "," temperature" 3366。$arr=json_decode($json,true);$ result=$ arr[" results "][0];$ index=$ result[" index "];//穿衣数据print _ r($ index);回声“”;$ weather=$ result[" weather _ data "];//日期数据print _ r($ weather);//运行这段代码,结果如下。不知道是不是你想要的结果。