<span></span><span>php </span><span>/** * 获取客户端IP * @return [string] [description] */</span><span> functiongetClientIp</span><span>()</span><span>{</span><span> $ip</span><span>=</span><span> NULL</span><span>;</span><span>if</span><span>(</span><span>isset</span><span>(</span><span>$_SERVER</span><span>[</span><span>'HTTP_X_FORWARDED_FOR'</span><span>]))</span><span>{</span><span> $arr</span><span>=</span><span>explode</span><span>(</span><span>','</span><span>,</span><span>$_SERVER</span><span>[</span><span>'HTTP_X_FORWARDED_FOR'</span><span>]);</span><span> $pos</span><span>=</span><span> array_search</span><span>(</span><span>'unknown'</span><span>,</span><span>$arr</span><span>);</span><span>if</span><span>(</span><span>false</span><span>!==</span><span>$pos</span><span>)</span><span> unset</span><span>(</span><span>$arr</span><span>[</span><span>$pos</span><span>]);</span><span> $ip </span><span>=</span><span> trim</span><span>(</span><span>$arr</span><span>[</span><span>0</span><span>]);</span><span>}</span><span>elseif</span><span>(</span><span>isset</span><span>(</span><span>$_SERVER</span><span>[</span><span>'HTTP_CLIENT_IP'</span><span>]))</span><span>{</span><span> $ip</span><span>=</span><span>$_SERVER</span><span>[</span><span>'HTTP_CLIENT_IP'</span><span>];</span><span>}</span><span>elseif</span><span>(</span><span>isset</span><span>(</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>]))</span><span>{</span><span> $ip</span><span>=</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>];</span><span>}</span><span>// IP地址合法验证</span><span> $ip</span><span>=</span><span>(</span><span>false</span><span>!==</span><span>ip2long</span><span>(</span><span>$ip</span><span>))</span><span>?</span><span>$ip</span><span>:</span><span>'0.0.0.0'</span><span>;</span><span>return</span><span>$ip</span><span>;</span><span>}</span><span>/** * 获取在线IP * @return String */</span><span> functiongetOnlineIp</span><span>(</span><span>$format</span><span>=</span><span>0</span><span>)</span><span>{</span><span>global</span><span>$S_GLOBAL</span><span>;</span><span>if</span><span>(</span><span>empty</span><span>(</span><span>$S_GLOBAL</span><span>[</span><span>'onlineip'</span><span>]))</span><span>{</span><span>if</span><span>(</span><span>getenv</span><span>(</span><span>'HTTP_CLIENT_IP'</span><span>)</span><span>&&</span><span>strcasecmp</span><span>(</span><span>getenv</span><span>(</span><span>'HTTP_CLIENT_IP'</span><span>),</span><span>'unknown'</span><span>))</span><span>{</span><span> $onlineip</span><span>=</span><span>getenv</span><span>(</span><span>'HTTP_CLIENT_IP'</span><span>);</span><span>}</span><span>elseif</span><span>(</span><span>getenv</span><span>(</span><span>'HTTP_X_FORWARDED_FOR'</span><span>)</span><span>&&</span><span>strcasecmp</span><span>(</span><span>getenv</span><span>(</span><span>'HTTP_X_FORWARDED_FOR'</span><span>),</span><span>'unknown'</span><span>))</span><span>{</span><span> $onlineip</span><span>=</span><span>getenv</span><span>(</span><span>'HTTP_X_FORWARDED_FOR'</span><span>);</span><span>}</span><span>elseif</span><span>(</span><span>getenv</span><span>(</span><span>'REMOTE_ADDR'</span><span>)</span><span>&&</span><span>strcasecmp</span><span>(</span><span>getenv</span><span>(</span><span>'REMOTE_ADDR'</span><span>),</span><span>'unknown'</span><span>))</span><span>{</span><span> $onlineip</span><span>=</span><span>getenv</span><span>(</span><span>'REMOTE_ADDR'</span><span>);</span><span>}</span><span>elseif</span><span>(</span><span>isset</span><span>(</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>])</span><span>&&</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>]</span><span>&&</span><span>strcasecmp</span><span>(</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>],</span><span>'unknown'</span><span>))</span><span>{</span><span> $onlineip</span><span>=</span><span>$_SERVER</span><span>[</span><span>'REMOTE_ADDR'</span><span>];</span><span>}</span><span> preg_match</span><span>(</span><span>"/[\d\.]{7,15}/"</span><span>,</span><span>$onlineip</span><span>,</span><span>$onlineipmatches</span><span>);</span><span> $S_GLOBAL</span><span>[</span><span>'onlineip'</span><span>]</span><span>=</span><span>$onlineipmatches</span><span>[</span><span>0</span><span>]</span><span>?</span><span>$onlineipmatches</span><span>[</span><span>0</span><span>]</span><span>:</span><span>'unknown'</span><span>;</span><span>}</span><span>if</span><span>(</span><span>$format</span><span>)</span><span>{</span><span> $ips</span><span>=</span><span>explode</span><span>(</span><span>'.'</span><span>,</span><span>$S_GLOBAL</span><span>[</span><span>'onlineip'</span><span>]);</span><span>for</span><span>(</span><span>$i</span><span>=</span><span>0</span><span>;</span><span>$i</span><span><span>3</span><span>;</span><span>$i</span><span>++)</span><span>{</span><span> $ips</span><span>[</span><span>$i</span><span>]</span><span>=</span><span>intval</span><span>(</span><span>$ips</span><span>[</span><span>$i</span><span>]);</span><span>}</span><span> returnsprintf</span><span>(</span><span>'%03d%03d%03d'</span><span>,</span><span>$ips</span><span>[</span><span>0</span><span>],</span><span>$ips</span><span>[</span><span>1</span><span>],</span><span>$ips</span><span>[</span><span>2</span><span>]);</span><span>}</span><span>else</span><span>{</span><span>return</span><span>$S_GLOBAL</span><span>[</span><span>'onlineip'</span><span>];</span><span>}</span><span>}</span><span>/** * 获取url * @return [type] [description] */</span><span> functiongetUrl</span><span>(){</span><span> $pageURL</span><span>=</span><span>'http'</span><span>;</span><span>if</span><span>(</span><span>isset</span><span>(</span><span>$_SERVER</span><span>[</span><span>"HTTPS"</span><span>])</span><span>&&</span><span>$_SERVER</span><span>[</span><span>"HTTPS"</span><span>]</span><span>==</span><span>"on"</span><span>)</span><span>{</span><span> $pageURL</span><span>.=</span><span>"s"</span><span>;</span><span>}</span><span> $pageURL</span><span>.=</span><span>"://"</span><span>;</span><span>if</span><span>(</span><span>$_SERVER</span><span>[</span><span>"SERVER_PORT"</span><span>]</span><span>!=</span><span>"80"</span><span>)</span><span>{</span><span> $pageURL</span><span>.=</span><span>$_SERVER</span><span>[</span><span>"HTTP_HOST"</span><span>]</span><span>.</span><span>":"</span><span>.</span><span>$_SERVER</span><span>[</span><span>"SERVER_PORT"</span><span>]</span><span>.</span><span>$_SERVER</span><span>[</span><span>"REQUEST_URI"</span><span>];</span><span>}</span><span>else</span><span>{</span><span> $pageURL</span><span>.=</span><span>$_SERVER</span><span>[</span><span>"HTTP_HOST"</span><span>]</span><span>.</span><span>$_SERVER</span><span>[</span><span>"REQUEST_URI"</span><span>];</span><span>}</span><span>return</span><span>$pageURL</span><span>;</span><span>}</span><span>/** * 获取当前站点的访问路径根目录 * @return [type] [description] */</span><span> functiongetSiteUrl</span><span>()</span><span>{</span><span> $uri</span><span>=</span><span>$_SERVER</span><span>[</span><span>'REQUEST_URI'</span><span>]?</span><span>$_SERVER</span><span>[</span><span>'REQUEST_URI'</span><span>]:(</span><span>$_SERVER</span><span>[</span><span>'PHP_SELF'</span><span>]?</span><span>$_SERVER</span><span>[</span><span>'PHP_SELF'</span><span>]:</span><span>$_SERVER</span><span>[</span><span>'SCRIPT_NAME'</span><span>]);</span><span>return</span><span>'http://'</span><span>.</span><span>$_SERVER</span><span>[</span><span>'HTTP_HOST'</span><span>].</span><span>substr</span><span>(</span><span>$uri</span><span>,</span><span>0</span><span>,</span><span>strrpos</span><span>(</span><span>$uri</span><span>,</span><span>'/'</span><span>)+</span><span>1</span><span>);</span><span>}</span><span>/** * 字符串截取,支持中文和其他编码 * @param [string] $str [字符串] * @param integer $start [起始位置] * @param integer $length [截取长度] * @param string $charset [字符串编码] * @param boolean $suffix [是否有省略号] * @return [type] [description] */</span><span> functionmsubstr</span><span>(</span><span>$str</span><span>,</span><span>$start</span><span>=</span><span>0</span><span>,</span><span>$length</span><span>=</span><span>15</span><span>,</span><span>$charset</span><span>=</span><span>"utf-8"</span><span>,</span><span>$suffix</span><span>=</span><span>true</span><span>)</span><span>{</span><span>if</span><span>(</span><span>function_exists</span><span>(</span><span>"mb_substr"</span><span>))</span><span>{</span><span> returnmb_substr</span><span>(</span><span>$str</span><span>,</span><span>$start</span><span>,</span><span>$length</span><span>,</span><span>$charset</span><span>);</span><span>}</span><span>elseif</span><span>(</span><span>function_exists</span><span>(</span><span>'iconv_substr'</span><span>))</span><span>{</span><span> returniconv_substr</span><span>(</span><span>$str</span><span>,</span><span>$start</span><span>,</span><span>$length</span><span>,</span><span>$charset</span><span>);</span><span>}</span><span> $re</span><span>[</span><span>'utf-8'</span><span>]</span><span>=</span><span>"/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}/"</span><span>;</span><span> $re</span><span>[</span><span>'gb2312'</span><span>]</span><span>=</span><span>"/[\x01-\x7f]|[\xb0-\xf7][\xa0-\xfe]/"</span><span>;</span><span> $re</span><span>[</span><span>'gbk'</span><span>]</span><span>=</span><span>"/[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]/"</span><span>;</span><span> $re</span><span>[</span><span>'big5'</span><span>]</span><span>=</span><span>"/[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|\xa1-\xfe])/"</span><span>;</span><span> preg_match_all</span><span>(</span><span>$re</span><span>[</span><span>$charset</span><span>],</span><span>$str</span><span>,</span><span>$match</span><span>);</span><span> $slice</span><span>=</span><span> join</span><span>(</span><span>""</span><span>,</span><span>array_slice</span><span>(</span><span>$match</span><span>[</span><span>0</span><span>],</span><span>$start</span><span>,</span><span>$length</span><span>));</span><span>if</span><span>(</span><span>$suffix</span><span>)</span><span>{</span><span>return</span><span>$slice</span><span>.</span><span>"…"</span><span>;</span><span>}</span><span>return</span><span>$slice</span><span>;</span><span>}</span><span>/** * php 实现js escape 函数 * @param [type] $string [description] * @param string $encoding [description] * @return [type] [description] */</span><span> functionescape</span><span>(</span><span>$string</span><span>,</span><span>$encoding</span><span>=</span><span>'UTF-8'</span><span>){</span><span> $return</span><span>=</span><span>null</span><span>;</span><span>for</span><span>(</span><span>$x</span><span>=</span><span>0</span><span>;</span><span>$x</span><span><span> mb_strlen</span><span>(</span><span>$string</span><span>,</span><span>$encoding</span><span>);</span><span>$x</span><span>++)</span><span>{</span><span> $str</span><span>=</span><span> mb_substr</span><span>(</span><span>$string</span><span>,</span><span>$x</span><span>,</span><span>1</span><span>,</span><span>$encoding</span><span>);</span><span>if</span><span>(</span><span>strlen</span><span>(</span><span>$str</span><span>)</span><span>></span><span>1</span><span>)</span><span>{</span><span>// 多字节字符</span><span> $return</span><span>.=</span><span>"%u"</span><span>.</span><span>strtoupper</span><span>(</span><span>bin2hex</span><span>(</span><span>mb_convert_encoding</span><span>(</span><span>$str</span><span>,</span><span>'UCS-2'</span><span>,</span><span>$encoding</span><span>)));</span><span>}</span><span>else</span><span>{</span><span> $return</span><span>.=</span><span>"%"</span><span>.</span><span>strtoupper</span><span>(</span><span>bin2hex</span><span>(</span><span>$str</span><span>));</span><span>}</span><span>}</span><span>return</span><span>$return</span><span>;</span><span>}</span><span>/** * php 实现 js unescape函数 * @param [type] $str [description] * @return [type] [description] */</span><span> functionunescape</span><span>(</span><span>$str</span><span>)</span><span>{</span><span> $str</span><span>=</span><span> rawurldecode</span><span>(</span><span>$str</span><span>);</span><span> preg_match_all</span><span>(</span><span>"/(?:%u.{4})|.{4};|\d+;|.+/U"</span><span>,</span><span>$str</span><span>,</span><span>$r</span><span>);</span><span> $ar</span><span>=</span><span>$r</span><span>[</span><span>0</span><span>];</span><span>foreach</span><span>(</span><span>$aras$k</span><span>=></span><span>$v</span><span>)</span><span>{</span><span>if</span><span>(</span><span>substr</span><span>(</span><span>$v</span><span>,</span><span>0</span><span>,</span><span>2</span><span>)</span><span>==</span><span>"%u"</span><span>){</span><span> $ar</span><span>[</span><span>$k</span><span>]</span><span>=</span><span> iconv</span><span>(</span><span>"UCS-2"</span><span>,</span><span>"utf-8//IGNORE"</span><span>,</span><span>pack</span><span>(</span><span>"H4"</span><span>,</span><span>substr</span><span>(</span><span>$v</span><span>,-</span><span>4</span><span>)));</span><span>}</span><span>elseif</span><span>(</span><span>substr</span><span>(</span><span>$v</span><span>,</span><span>0</span><span>,</span><span>3</span><span>)</span><span>==</span><span>""</span><span>)</span><span>{</span><span> $ar</span><span>[</span><span>$k</span><span>]</span><span>=</span><span> iconv</span><span>(</span><span>"UCS-2"</span><span>,</span><span>"utf-8"</span><span>,</span><span>pack</span><span>(</span><span>"H4"</span><span>,</span><span>substr</span><span>(</span><span>$v</span><span>,</span><span>3</span><span>,-</span><span>1</span><span>)));</span><span>}</span><span>elseif</span><span>(</span><span>substr</span><span>(</span><span>$v</span><span>,</span><span>0</span><span>,</span><span>2</span><span>)</span><span>==</span><span>""</span><span>)</span><span>{</span><span> echosubstr</span><span>(</span><span>$v</span><span>,</span><span>2</span><span>,-</span><span>1</span><span>).</span><span>""</span><span>;</span><span> $ar</span><span>[</span><span>$k</span><span>]</span><span>=</span><span> iconv</span><span>(</span><span>"UCS-2"</span><span>,</span><span>"utf-8"</span><span>,</span><span>pack</span><span>(</span><span>"n"</span><span>,</span><span>substr</span><span>(</span><span>$v</span><span>,</span><span>2</span><span>,-</span><span>1</span><span>)));</span><span>}</span><span>}</span><span> returnjoin</span><span>(</span><span>""</span><span>,</span><span>$ar</span><span>);</span><span>}</span><span>/** * 数字转人名币 * @param [type] $num [description] * @return [type] [description] */</span><span> functionnum2rmb </span><span>(</span><span>$num</span><span>)</span><span>{</span><span> $c1</span><span>=</span><span>"零壹贰叁肆伍陆柒捌玖"</span><span>;</span><span> $c2</span><span>=</span><span>"分角元拾佰仟万拾佰仟亿"</span><span>;</span><span> $num</span><span>=</span><span>round</span><span>(</span><span>$num</span><span>,</span><span>2</span><span>);</span><span> $num</span><span>=</span><span>$num</span><span>*</span><span>100</span><span>;</span><span>if</span><span>(</span><span>strlen</span><span>(</span><span>$num</span><span>)</span><span>></span><span>10</span><span>)</span><span>{</span><span>return</span><span>"oh,sorry,the number is too long!"</span><span>;</span><span>}</span><span> $i</span><span>=</span><span>0</span><span>;</span><span> $c</span><span>=</span><span>""</span><span>;</span><span>while</span><span>(</span><span>1</span><span>)</span><span>{</span><span>if</span><span>(</span><span>$i</span><span>==</span><span>0</span><span>)</span><span>{</span><span> $n</span><span>=</span><span>substr</span><span>(</span><span>$num</span><span>,</span><span>strlen</span><span>(</span><span>$num</span><span>)-</span><span>1</span><span>,</span><span>1</span><span>);</span><span>}</span><span>else</span><span>{</span><span> $n</span><span>=</span><span>$num</span><span>%</span><span>10</span><span>;</span><span>}</span><span> $p1</span><span>=</span><span>substr</span><span>(</span><span>$c1</span><span>,</span><span>3</span><span>*</span><span>$n</span><span>,</span><span>3</span><span>);</span><span> $p2</span><span>=</span><span>substr</span><span>(</span><span>$c2</span><span>,</span><span>3</span><span>*</span><span>$i</span><span>,</span><span>3</span><span>);</span><span>if</span><span>(</span><span>$n</span><span>!=</span><span>'0'</span><span>||</span><span>(</span><span>$n</span><span>==</span><span>'0'</span><span>&&</span><span>(</span><span>$p2</span><span>==</span><span>'亿'</span><span>||</span><span>$p2</span><span>==</span><span>'万'</span><span>||</span><span>$p2</span><span>==</span><span>'元'</span><span>)))</span><span>{</span><span> $c</span><span>=</span><span>$p1</span><span>.</span><span>$p2</span><span>.</span><span>$c</span><span>;</span><span>}</span><span>else</span><span>{</span><span> $c</span><span>=</span><span>$p1</span><span>.</span><span>$c</span><span>;</span><span>}</span><span> $i</span><span>=</span><span>$i</span><span>+</span><span>1</span><span>;</span><span> $num</span><span>=</span><span>$num</span><span>/</span><span>10</span><span>;</span><span> $num</span><span>=</span><span>(</span><span>int</span><span>)</span><span>$num</span><span>;</span><span>if</span><span>(</span><span>$num</span><span>==</span><span>0</span><span>)</span><span>{</span><span>break</span><span>;</span><span>}</span><span>}</span><span> $j</span><span>=</span><span>0</span><span>;</span><span> $slen</span><span>=</span><span>strlen</span><span>(</span><span>$c</span><span>);</span><span>while</span><span>(</span><span>$j</span><span><span>$slen</span><span>)</span><span>{</span><span> $m</span><span>=</span><span>substr</span><span>(</span><span>$c</span><span>,</span><span>$j</span><span>,</span><span>6</span><span>);</span><span>if</span><span>(</span><span>$m</span><span>==</span><span>'零元'</span><span>||</span><span>$m</span><span>==</span><span>'零万'</span><span>||</span><span>$m</span><span>==</span><span>'零亿'</span><span>||</span><span>$m</span><span>==</span><span>'零零'</span><span>)</span><span>{</span><span> $left</span><span>=</span><span>substr</span><span>(</span><span>$c</span><span>,</span><span>0</span><span>,</span><span>$j</span><span>);</span><span> $right</span><span>=</span><span>substr</span><span>(</span><span>$c</span><span>,</span><span>$j</span><span>+</span><span>3</span><span>);</span><span> $c</span><span>=</span><span>$left</span><span>.</span><span>$right</span><span>;</span><span> $j</span><span>=</span><span>$j</span><span>-</span><span>3</span><span>;</span><span> $slen</span><span>=</span><span>$slen</span><span>-</span><span>3</span><span>;</span><span>}</span><span> $j</span><span>=</span><span>$j</span><span>+</span><span>3</span><span>;</span><span>}</span><span>if</span><span>(</span><span>substr</span><span>(</span><span>$c</span><span>,</span><span>strlen</span><span>(</span><span>$c</span><span>)-</span><span>3</span><span>,</span><span>3</span><span>)</span><span>==</span><span>'零'</span><span>)</span><span>{</span><span> $c</span><span>=</span><span>substr</span><span>(</span><span>$c</span><span>,</span><span>0</span><span>,</span><span>strlen</span><span>(</span><span>$c</span><span>)-</span><span>3</span><span>);</span><span>}</span><span>// if there is a '0' on the end , chop it out</span><span>return</span><span>$c</span><span>.</span><span>"整"</span><span>;</span><span>}</span><span>/** * 特殊的字符 * @param [type] $str [description] * @return [type] [description] */</span><span> functionmakeSemiangle</span><span>(</span><span>$str</span><span>)</span><span>{</span><span> $arr</span><span>=</span><span>array</span><span>(</span><span>'0'</span><span>=></span><span>'0'</span><span>,</span><span>'1'</span><span>=></span><span>'1'</span><span>,</span><span>'2'</span><span>=></span><span>'2'</span><span>,</span><span>'3'</span><span>=></span><span>'3'</span><span>,</span><span>'4'</span><span>=></span><span>'4'</span><span>,</span><span>'5'</span><span>=></span><span>'5'</span><span>,</span><span>'6'</span><span>=></span><span>'6'</span><span>,</span><span>'7'</span><span>=></span><span>'7'</span><span>,</span><span>'8'</span><span>=></span><span>'8'</span><span>,</span><span>'9'</span><span>=></span><span>'9'</span><span>,</span><span>'A'</span><span>=></span><span>'A'</span><span>,</span><span>'B'</span><span>=></span><span>'B'</span><span>,</span><span>'C'</span><span>=></span><span>'C'</span><span>,</span><span>'D'</span><span>=></span><span>'D'</span><span>,</span><span>'E'</span><span>=></span><span>'E'</span><span>,</span><span>'F'</span><span>=></span><span>'F'</span><span>,</span><span>'G'</span><span>=></span><span>'G'</span><span>,</span><span>'H'</span><span>=></span><span>'H'</span><span>,</span><span>'I'</span><span>=></span><span>'I'</span><span>,</span><span>'J'</span><span>=></span><span>'J'</span><span>,</span><span>'K'</span><span>=></span><span>'K'</span><span>,</span><span>'L'</span><span>=></span><span>'L'</span><span>,</span><span>'M'</span><span>=></span><span>'M'</span><span>,</span><span>'N'</span><span>=></span><span>'N'</span><span>,</span><span>'O'</span><span>=></span><span>'O'</span><span>,</span><span>'P'</span><span>=></span><span>'P'</span><span>,</span><span>'Q'</span><span>=></span><span>'Q'</span><span>,</span><span>'R'</span><span>=></span><span>'R'</span><span>,</span><span>'S'</span><span>=></span><span>'S'</span><span>,</span><span>'T'</span><span>=></span><span>'T'</span><span>,</span><span>'U'</span><span>=></span><span>'U'</span><span>,</span><span>'V'</span><span>=></span><span>'V'</span><span>,</span><span>'W'</span><span>=></span><span>'W'</span><span>,</span><span>'X'</span><span>=></span><span>'X'</span><span>,</span><span>'Y'</span><span>=></span><span>'Y'</span><span>,</span><span>'Z'</span><span>=></span><span>'Z'</span><span>,</span><span>'a'</span><span>=></span><span>'a'</span><span>,</span><span>'b'</span><span>=></span><span>'b'</span><span>,</span><span>'c'</span><span>=></span><span>'c'</span><span>,</span><span>'d'</span><span>=></span><span>'d'</span><span>,</span><span>'e'</span><span>=></span><span>'e'</span><span>,</span><span>'f'</span><span>=></span><span>'f'</span><span>,</span><span>'g'</span><span>=></span><span>'g'</span><span>,</span><span>'h'</span><span>=></span><span>'h'</span><span>,</span><span>'i'</span><span>=></span><span>'i'</span><span>,</span><span>'j'</span><span>=></span><span>'j'</span><span>,</span><span>'k'</span><span>=></span><span>'k'</span><span>,</span><span>'l'</span><span>=></span><span>'l'</span><span>,</span><span>'m'</span><span>=></span><span>'m'</span><span>,</span><span>'n'</span><span>=></span><span>'n'</span><span>,</span><span>'o'</span><span>=></span><span>'o'</span><span>,</span><span>'p'</span><span>=></span><span>'p'</span><span>,</span><span>'q'</span><span>=></span><span>'q'</span><span>,</span><span>'r'</span><span>=></span><span>'r'</span><span>,</span><span>'s'</span><span>=></span><span>'s'</span><span>,</span><span>'t'</span><span>=></span><span>'t'</span><span>,</span><span>'u'</span><span>=></span><span>'u'</span><span>,</span><span>'v'</span><span>=></span><span>'v'</span><span>,</span><span>'w'</span><span>=></span><span>'w'</span><span>,</span><span>'x'</span><span>=></span><span>'x'</span><span>,</span><span>'y'</span><span>=></span><span>'y'</span><span>,</span><span>'z'</span><span>=></span><span>'z'</span><span>,</span><span>'('</span><span>=></span><span>'('</span><span>,</span><span>')'</span><span>=></span><span>')'</span><span>,</span><span>'〔'</span><span>=></span><span>'['</span><span>,</span><span>'〕'</span><span>=></span><span>']'</span><span>,</span><span>'【'</span><span>=></span><span>'['</span><span>,</span><span>'】'</span><span>=></span><span>']'</span><span>,</span><span>'〖'</span><span>=></span><span>'['</span><span>,</span><span>'〗'</span><span>=></span><span>']'</span><span>,</span><span>'{'</span><span>=></span><span>'{'</span><span>,</span><span>'}'</span><span>=></span><span>'}'</span><span>,</span><span>'《'</span><span>=></span><span>'<span>,</span><span>'》'</span><span>=></span><span>'>'</span><span>,</span><span>'%'</span><span>=></span><span>'%'</span><span>,</span><span>'+'</span><span>=></span><span>'+'</span><span>,</span><span>'—'</span><span>=></span><span>'-'</span><span>,</span><span>'-'</span><span>=></span><span>'-'</span><span>,</span><span>'~'</span><span>=></span><span>'-'</span><span>,</span><span>':'</span><span>=></span><span>':'</span><span>,</span><span>'。'</span><span>=></span><span>'.'</span><span>,</span><span>'、'</span><span>=></span><span>','</span><span>,</span><span>','</span><span>=></span><span>'.'</span><span>,</span><span>'、'</span><span>=></span><span>'.'</span><span>,</span><span>';'</span><span>=></span><span>';'</span><span>,</span><span>'?'</span><span>=></span><span>'?'</span><span>,</span><span>'!'</span><span>=></span><span>'!'</span><span>,</span><span>'…'</span><span>=></span><span>'-'</span><span>,</span><span>'‖'</span><span>=></span><span>'|'</span><span>,</span><span>'”'</span><span>=></span><span>'"'</span><span>,</span><span>'“'</span><span>=></span><span>'"'</span><span>,</span><span>'’'</span><span>=></span><span>'`'</span><span>,</span><span>'‘'</span><span>=></span><span>'`'</span><span>,</span><span>'|'</span><span>=></span><span>'|'</span><span>,</span><span>'〃'</span><span>=></span><span>'"'</span><span>,</span><span>' '</span><span>=></span><span>' '</span><span>,</span><span>'.'</span><span>=></span><span>'.'</span><span>);</span><span> returnstrtr</span><span>(</span><span>$str</span><span>,</span><span>$arr</span><span>);</span><span>}</span><span>/** * 下载 * @param [type] $filename [description] * @param string $dir [description] * @return [type] [description] */</span><span> functiondownloads</span><span>(</span><span>$filename</span><span>,</span><span>$dir</span><span>=</span><span>'./'</span><span>){</span><span> $filepath</span><span>=</span><span>$dir</span><span>.</span><span>$filename</span><span>;</span><span>if</span><span>(!</span><span>file_exists</span><span>(</span><span>$filepath</span><span>)){</span><span> header</span><span>(</span><span>"Content-type: text/html; charset=utf-8"</span><span>);</span><span> echo</span><span>"File not found!"</span><span>;</span><span>exit</span><span>;</span><span>}</span><span>else</span><span>{</span><span> $file</span><span>=</span><span>fopen</span><span>(</span><span>$filepath</span><span>,</span><span>"r"</span><span>);</span><span>Header</span><span>(</span><span>"Content-type: application/octet-stream"</span><span>);</span><span>Header</span><span>(</span><span>"Accept-Ranges: bytes"</span><span>);</span><span>Header</span><span>(</span><span>"Accept-Length: "</span><span>.</span><span>filesize</span><span>(</span><span>$filepath</span><span>));</span><span>Header</span><span>(</span><span>"Content-Disposition: attachment; filename="</span><span>.</span><span>$filename</span><span>);</span><span> echofread</span><span>(</span><span>$file</span><span>,</span><span>filesize</span><span>(</span><span>$filepath</span><span>));</span><span> fclose</span><span>(</span><span>$file</span><span>);</span><span>}</span><span>}</span><span>/** * 创建一个目录树 * @param [type] $dir [description] * @param integer $mode [description] * @return [type] [description] */</span><span> functionmkdirs</span><span>(</span><span>$dir</span><span>,</span><span>$mode</span><span>=</span><span>0777</span><span>)</span><span>{</span><span>if</span><span>(!</span><span>is_dir</span><span>(</span><span>$dir</span><span>))</span><span>{</span><span> mkdirs</span><span>(</span><span>dirname</span><span>(</span><span>$dir</span><span>),</span><span>$mode</span><span>);</span><span> returnmkdir</span><span>(</span><span>$dir</span><span>,</span><span>$mode</span><span>);</span><span>}</span><span> returntrue</span><span>;</span><span>}</span><span>3.</span><span>[代码]</span><span>curl functionxcurl</span><span>(</span><span>$url</span><span>,</span><span>$ref</span><span>=</span><span>null</span><span>,</span><span>$post</span><span>=</span><span>array</span><span>(),</span><span>$ua</span><span>=</span><span>"Mozilla/5.0 (X11; Linux x86_64; rv:2.2a1pre) Gecko/20110324 Firefox/4.2a1pre"</span><span>,</span><span>$print</span><span>=</span><span>false</span><span>)</span><span>{</span><span> $ch</span><span>=</span><span> curl_init</span><span>();</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_AUTOREFERER</span><span>,</span><span>true</span><span>);</span><span>if</span><span>(!</span><span>empty</span><span>(</span><span>$ref</span><span>))</span><span>{</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_REFERER</span><span>,</span><span>$ref</span><span>);</span><span>}</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_URL</span><span>,</span><span>$url</span><span>);</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_HEADER</span><span>,</span><span>0</span><span>);</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_FOLLOWLOCATION</span><span>,</span><span>1</span><span>);</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_RETURNTRANSFER</span><span>,</span><span>1</span><span>);</span><span>if</span><span>(!</span><span>empty</span><span>(</span><span>$ua</span><span>))</span><span>{</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_USERAGENT</span><span>,</span><span>$ua</span><span>);</span><span>}</span><span>if</span><span>(</span><span>count</span><span>(</span><span>$post</span><span>)</span><span>></span><span>0</span><span>){</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_POST</span><span>,</span><span>1</span><span>);</span><span> curl_setopt</span><span>(</span><span>$ch</span><span>,</span><span> CURLOPT_POSTFIELDS</span><span>,</span><span>$post</span><span>);</span><span>}</span><span> $output</span><span>=</span><span> curl_exec</span><span>(</span><span>$ch</span><span>);</span><span> curl_close</span><span>(</span><span>$ch</span><span>);</span><span>if</span><span>(</span><span>$print</span><span>)</span><span>{</span><span>print</span><span>(</span><span>$output</span><span>);</span><span>}</span><span>else</span><span>{</span><span>return</span><span>$output</span><span>;</span><span>}</span><span>}</span><span>4.</span><span>[代码]日期时间函数</span><span>/** * 根据一个时间戳得到详细信息 * @param [type] $time [时间戳] * @return [type] * @author [yangsheng@yahoo.com] */</span><span> functiongetDateInfo</span><span>(</span><span>$time</span><span>){</span><span> $day_of_week_cn</span><span>=</span><span>array</span><span>(</span><span>"日"</span><span>,</span><span>"一"</span><span>,</span><span>"二"</span><span>,</span><span>"三"</span><span>,</span><span>"四"</span><span>,</span><span>"五"</span><span>,</span><span>"六"</span><span>);</span><span>//中文星期</span><span> $week_of_month_cn</span><span>=</span><span>array</span><span>(</span><span>''</span><span>,</span><span>'第1周'</span><span>,</span><span>'第2周'</span><span>,</span><span>'第3周'</span><span>,</span><span>'第4周'</span><span>,</span><span>'第5周'</span><span>,</span><span>'第6周'</span><span><span>);</span><span>#本月第几周</span></span><span> $tenDays</span><span>=</span><span> getTenDays</span><span>(</span><span>date</span><span>(</span><span>'j'</span><span>,</span><span>$time</span><span>));</span><span>#获得旬</span><span> $quarter</span><span>=</span><span> getQuarter</span><span>(</span><span>date</span><span>(</span><span>'n'</span><span>,</span><span>$time</span><span>),</span><span>date</span><span>(</span><span>'Y'</span><span>,</span><span>$time</span><span><span>));</span><span>#</span></span><span><span>获取季度</span></span><span> $dimDate</span><span>=</span><span>array</span><span>(</span><span>'date_key'</span><span>=></span><span>strtotime</span><span>(</span><span>date</span><span>(</span><span>'Y-m-d'</span><span>,</span><span>$time</span><span>)),</span><span>#日期时间戳</span><span>'date_day'</span><span>=></span><span>date</span><span>(</span><span>'Y-m-d'</span><span>,</span><span>$time</span><span>),</span><span>#日期YYYY-MM-DD</span><span>'current_year'</span><span>=></span><span>date</span><span>(</span><span>'Y'</span><span>,</span><span>$time</span><span><span>),</span><span>#数字年</span></span><span>'current_quarter'</span><span>=></span><span>$quarter</span><span>[</span><span>'current_quarter'</span><span>],</span><span>#季度</span><span>'quarter_cn'</span><span>=></span><span>$quarter</span><span>[</span><span>'quarter_cn'</span><span>],</span><span>'current_month'</span><span>=></span><span>date</span><span>(</span><span>'n'</span><span>,</span><span>$time</span><span><span>),</span><span>#月</span></span><span>'month_cn'</span><span>=></span><span>date</span><span>(</span><span>'Y-m'</span><span>,</span><span>$time</span><span>),</span><span>#月份</span><span>'tenday_of_month'</span><span>=></span><span>$tenDays</span><span>[</span><span>'tenday_of_month'</span><span><span>],</span><span>#数字旬</span></span><span>'tenday_cn'</span><span>=></span><span>$tenDays</span><span>[</span><span>'tenday_cn'</span><span><span>],</span><span>#中文旬</span></span><span>'week_of_month'</span><span>=></span><span>ceil</span><span>(</span><span>date</span><span>(</span><span>'j'</span><span>,</span><span>$time</span><span>)/</span><span>7</span><span>),</span><span>#本月第几周</span><span>'week_of_month_cn'</span><span>=></span><span>$week_of_month_cn</span><span>[</span><span>ceil</span><span>(</span><span>date</span><span>(</span><span>'j'</span><span>,</span><span>$time</span><span>)/</span><span>7</span><span><span>)],</span><span>#中文当月第几周</span></span><span>'day_of_year'</span><span>=></span><span>date</span><span>(</span><span>'z'</span><span>,</span><span>$time</span><span>)+</span><span>1</span><span>,</span><span>#年份中的第几天</span><span>'day_of_month'</span><span>=></span><span>date</span><span>(</span><span>'j'</span><span>,</span><span>$time</span><span><span>),</span><span>#得到几号</span></span><span>'day_of_week'</span><span>=></span><span>date</span><span>(</span><span>'w'</span><span>,</span><span>$time</span><span>)></span><span>0</span><span>?</span><span>date</span><span>(</span><span>'w'</span><span>,</span><span>$time</span><span>):</span><span>7</span><span><span>,</span><span>#星期几</span></span><span>'day_of_week_cn'</span><span>=></span><span>'星期'</span><span>.</span><span>$day_of_week_cn</span><span>[</span><span>date</span><span>(</span><span>'w'</span><span>,</span><span>$time</span><span>)],</span><span>);</span><span>return</span><span>$dimDate</span><span>;</span><span>}</span><span>/** * 获得日期是上中下旬 * @param [int] $j [几号] * @return [array] [description] * @author [yangsheng@yahoo.com] */</span><span> functiongetTenDays</span><span>(</span><span>$j</span><span>)</span><span>{</span><span> $j</span><span>=</span><span>intval</span><span>(</span><span>$j</span><span>);</span><span>if</span><span>(</span><span>$j</span><span><span>1</span><span>||</span><span>$j</span><span>></span><span>31</span><span>){</span><span> returnfalse</span><span><span>;</span><span>#不是日期</span></span><span>}</span><span> $tenDays</span><span>=</span><span>ceil</span><span>(</span><span>$j</span><span>/</span><span>10</span><span>);</span><span>switch</span><span>(</span><span>$tenDays</span><span>)</span><span>{</span><span> case1</span><span><span>:</span><span>#上旬</span></span><span> returnarray</span><span>(</span><span>'tenday_of_month'</span><span>=></span><span>1</span><span>,</span><span>'tenday_cn'</span><span>=></span><span>'上旬'</span><span>,);</span><span>break</span><span>;</span><span> case2</span><span><span>:</span><span>#中旬</span></span><span> returnarray</span><span>(</span><span>'tenday_of_month'</span><span>=></span><span>2</span><span>,</span><span>'tenday_cn'</span><span>=></span><span>'中旬'</span><span>,);</span><span>break</span><span>;</span><span>default</span><span><span>:</span><span>#下旬</span></span><span> returnarray</span><span>(</span><span>'tenday_of_month'</span><span>=></span><span>3</span><span>,</span><span>'tenday_cn'</span><span>=></span><span>'下旬'</span><span>,);</span><span>break</span><span>;</span><span>}</span><span> returnfalse</span><span>;</span><span>}</span><span>/** * 根据月份获得当前第几季度 * @param [int] $n [月份] * @param [int] $y [年] * @return [array] [description] */</span><span> functiongetQuarter</span><span>(</span><span>$n</span><span>,</span><span>$y</span><span>=</span><span>null</span><span>){</span><span> $n</span><span>=</span><span>intval</span><span>(</span><span>$n</span><span>);</span><span>if</span><span>(</span><span>$n</span><span><span>1</span><span>||</span><span>$n</span><span>></span><span>12</span><span>){</span><span> returnfalse</span><span>;</span><span>#不是月份</span><span>}</span><span> $quarter</span><span>=</span><span>ceil</span><span>(</span><span>$n</span><span>/</span><span>3</span><span>);</span><span>switch</span><span>(</span><span>$quarter</span><span>)</span><span>{</span><span> case1</span><span>:</span><span>#第一季度</span><span> returnarray</span><span>(</span><span>'current_quarter'</span><span>=></span><span>1</span><span>,</span><span>'quarter_cn'</span><span>=></span><span>$y</span><span>?</span><span>$y</span><span>.</span><span>'-Q1'</span><span>:</span><span>'Q1'</span><span>);</span><span>break</span><span>;</span><span> case2</span><span>:</span><span>#第二季度</span><span> returnarray</span><span>(</span><span>'current_quarter'</span><span>=></span><span>2</span><span>,</span><span>'quarter_cn'</span><span>=></span><span>$y</span><span>?</span><span>$y</span><span>.</span><span>'-Q2'</span><span>:</span><span>'Q2'</span><span>);</span><span>break</span><span>;</span><span> case3</span><span>:</span><span>#第三季度</span><span> returnarray</span><span>(</span><span>'current_quarter'</span><span>=></span><span>3</span><span>,</span><span>'quarter_cn'</span><span>=></span><span>$y</span><span>?</span><span>$y</span><span>.</span><span>'-Q3'</span><span>:</span><span>'Q3'</span><span>);</span><span>break</span><span>;</span><span> case4</span><span>:</span><span>#第四季度</span><span> returnarray</span><span>(</span><span>'current_quarter'</span><span>=></span><span>4</span><span>,</span><span>'quarter_cn'</span><span>=></span><span>$y</span><span>?</span><span>$y</span><span>.</span><span>'-Q4'</span><span>:</span><span>'Q4'</span><span>);</span><span>break</span><span>;</span><span>}</span><span> returnfalse</span><span>;</span><span>}</span></span></span></span></span></span></span>
<span>网站地址:http://www.5k5c.com/blog/175</span>
以上就介紹了 php 的常用函數FUNCTION,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP可以輕鬆創建互動網頁內容。 1)通過嵌入HTML動態生成內容,根據用戶輸入或數據庫數據實時展示。 2)處理表單提交並生成動態輸出,確保使用htmlspecialchars防XSS。 3)結合MySQL創建用戶註冊系統,使用password_hash和預處理語句增強安全性。掌握這些技巧將提升Web開發效率。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP在現代Web開發中仍然重要,尤其在內容管理和電子商務平台。 1)PHP擁有豐富的生態系統和強大框架支持,如Laravel和Symfony。 2)性能優化可通過OPcache和Nginx實現。 3)PHP8.0引入JIT編譯器,提升性能。 4)雲原生應用通過Docker和Kubernetes部署,提高靈活性和可擴展性。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優勢,適合不同場景。 1.PHP適用於web開發,提供內置web服務器和豐富函數庫。 2.Python適合數據科學和機器學習,語法簡潔且有強大標準庫。選擇時應根據項目需求決定。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

記事本++7.3.1
好用且免費的程式碼編輯器