php 颜色较深
此功能使颜色变深。<br/>您可以输入颜色之间的差异(默认值= 20)。
<span style="color: #000000; font-weight: bold;">function</span> ColorDarken<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span>, <span style="color: #0000ff;">$dif</span>=<span style="color: #cc66cc;">20</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$color</span> = <a href="http://www.php.net/str_replace"><span style="color: #000066;">str_replace</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'#'</span>, <span style="color: #ff0000;">''</span>, <span style="color: #0000ff;">$color</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span><span style="color: #66cc66;">)</span> != <span style="color: #cc66cc;">6</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span> <span style="color: #b1b100;">return</span> <span style="color: #ff0000;">'000000'</span>; <span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$rgb</span> = <span style="color: #ff0000;">''</span>;
<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$x</span>=<span style="color: #cc66cc;">0</span>;<span style="color: #0000ff;">$x</span><<span style="color: #cc66cc;">3</span>;<span style="color: #0000ff;">$x</span>++<span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$c</span> = <a href="http://www.php.net/hexdec"><span style="color: #000066;">hexdec</span></a><span style="color: #66cc66;">(</span><a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span>,<span style="color: #66cc66;">(</span><span style="color: #cc66cc;">2</span>*<span style="color: #0000ff;">$x</span><span style="color: #66cc66;">)</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span> - <span style="color: #0000ff;">$dif</span>;
<span style="color: #0000ff;">$c</span> = <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span> < <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">)</span> ? <span style="color: #cc66cc;">0</span> : <a href="http://www.php.net/dechex"><span style="color: #000066;">dechex</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$rgb</span> .= <span style="color: #66cc66;">(</span><a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">)</span> < <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span> ? <span style="color: #ff0000;">'0'</span>.<span style="color: #0000ff;">$c</span> : <span style="color: #0000ff;">$c</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">return</span> <span style="color: #ff0000;">'#'</span>.<span style="color: #0000ff;">$rgb</span>;
<span style="color: #66cc66;">}</span>
php 颜色反转
此功能将颜色反转为相反的颜色。<br/>(白色到黑色,蓝色到黄色等)
<span style="color: #000000; font-weight: bold;">function</span> color_inverse<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$color</span> = <a href="http://www.php.net/str_replace"><span style="color: #000066;">str_replace</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'#'</span>, <span style="color: #ff0000;">''</span>, <span style="color: #0000ff;">$color</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span><span style="color: #66cc66;">)</span> != <span style="color: #cc66cc;">6</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span> <span style="color: #b1b100;">return</span> <span style="color: #ff0000;">'000000'</span>; <span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$rgb</span> = <span style="color: #ff0000;">''</span>;
<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$x</span>=<span style="color: #cc66cc;">0</span>;<span style="color: #0000ff;">$x</span><<span style="color: #cc66cc;">3</span>;<span style="color: #0000ff;">$x</span>++<span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$c</span> = <span style="color: #cc66cc;">255</span> - <a href="http://www.php.net/hexdec"><span style="color: #000066;">hexdec</span></a><span style="color: #66cc66;">(</span><a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$color</span>,<span style="color: #66cc66;">(</span><span style="color: #cc66cc;">2</span>*<span style="color: #0000ff;">$x</span><span style="color: #66cc66;">)</span>,<span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$c</span> = <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span> < <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">)</span> ? <span style="color: #cc66cc;">0</span> : <a href="http://www.php.net/dechex"><span style="color: #000066;">dechex</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$rgb</span> .= <span style="color: #66cc66;">(</span><a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">)</span> < <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span> ? <span style="color: #ff0000;">'0'</span>.<span style="color: #0000ff;">$c</span> : <span style="color: #0000ff;">$c</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">return</span> <span style="color: #ff0000;">'#'</span>.<span style="color: #0000ff;">$rgb</span>;
<span style="color: #66cc66;">}</span>
php Bin2PHP
将二进制文件或文本文件转换为php文件
<span style="color: #000000; font-weight: bold;">function</span> bin2php<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$input_file</span>, <span style="color: #0000ff;">$output_file</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$i</span> = <a href="http://www.php.net/file_get_contents"><span style="color: #000066;">file_get_contents</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$input_file</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$b</span> = <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$x</span> = <span style="color: #cc66cc;">0</span>; <span style="color: #0000ff;">$y</span> = <span style="color: #cc66cc;">0</span>;
<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$c</span>=<span style="color: #cc66cc;">0</span>; <span style="color: #0000ff;">$c</span> < <a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">)</span>; <span style="color: #0000ff;">$c</span>++<span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$no</span> = <a href="http://www.php.net/bin2hex"><span style="color: #000066;">bin2hex</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$c</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$b</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$x</span><span style="color: #66cc66;">]</span> = <a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$b</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$x</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span> ? <span style="color: #0000ff;">$b</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$x</span><span style="color: #66cc66;">]</span>.<span style="color: #ff0000;">'<span style="color: #000099; font-weight: bold;">\\</span>x'</span>.<span style="color: #0000ff;">$no</span> : <span style="color: #ff0000;">'<span style="color: #000099; font-weight: bold;">\\</span>x'</span>.<span style="color: #0000ff;">$no</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$y</span> >= <span style="color: #cc66cc;">10</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$x</span>++; <span style="color: #0000ff;">$y</span> = <span style="color: #cc66cc;">0</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$y</span>++;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$output</span> = <span style="color: #ff0000;">"<"</span>.<span style="color: #ff0000;">"?php<span style="color: #000099; font-weight: bold;">\n</span>"</span>;
<span style="color: #0000ff;">$output</span> .= <span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\$</span>f=<span style="color: #000099; font-weight: bold;">\"</span>"</span>;
<span style="color: #0000ff;">$output</span> .= <a href="http://www.php.net/implode"><span style="color: #000066;">implode</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\"</span>;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\$</span>f.=<span style="color: #000099; font-weight: bold;">\"</span>"</span>, <span style="color: #0000ff;">$b</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$output</span> .= <span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\"</span>;<span style="color: #000099; font-weight: bold;">\n</span>print <span style="color: #000099; font-weight: bold;">\$</span>f;"</span>;
<span style="color: #0000ff;">$output</span> .= <span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\n</span>?>"</span>;
<span style="color: #0000ff;">$fp</span> = <a href="http://www.php.net/fopen"><span style="color: #000066;">fopen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$output_file</span>, <span style="color: #ff0000;">'w+'</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fwrite"><span style="color: #000066;">fwrite</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #0000ff;">$output</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fclose"><span style="color: #000066;">fclose</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
php Exif缩略图
此代码段显示如何提取图片的EXIF缩略图。
<span style="color: #808080; font-style: italic;">// file to read</span>
<span style="color: #0000ff;">$file</span> = <span style="color: #ff0000;">'test.jpg'</span>;
<span style="color: #0000ff;">$image</span> = <a href="http://www.php.net/exif_thumbnail"><span style="color: #000066;">exif_thumbnail</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$file</span>, <span style="color: #0000ff;">$width</span>, <span style="color: #0000ff;">$height</span>, <span style="color: #0000ff;">$type</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// width, height and type get filled with data</span>
<span style="color: #808080; font-style: italic;">// after calling "exif_thumbnail"</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$image</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// send header and image data to the browser:</span>
<a href="http://www.php.net/header"><span style="color: #000066;">header</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'Content-type: '</span> .<a href="http://www.php.net/image_type_to_mime_type"><span style="color: #000066;">image_type_to_mime_type</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$type</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/print"><span style="color: #000066;">print</span></a> <span style="color: #0000ff;">$image</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">else</span> <span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// there is no thumbnail available, handle the error:</span>
<a href="http://www.php.net/print"><span style="color: #000066;">print</span></a> <span style="color: #ff0000;">'No thumbnail available'</span>;
<span style="color: #66cc66;">}</span>
php 将PHPInfo保存到文件
将phpinfo()页面保存到文件中
<span style="color: #000000; font-weight: bold;">function</span> PHPInfo2File<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$target_file</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<a href="http://www.php.net/ob_start"><span style="color: #000066;">ob_start</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/phpinfo"><span style="color: #000066;">phpinfo</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$info</span> = <a href="http://www.php.net/ob_get_contents"><span style="color: #000066;">ob_get_contents</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/ob_end_clean"><span style="color: #000066;">ob_end_clean</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$fp</span> = <a href="http://www.php.net/fopen"><span style="color: #000066;">fopen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$target_file</span>, <span style="color: #ff0000;">"w+"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fwrite"><span style="color: #000066;">fwrite</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #0000ff;">$info</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fclose"><span style="color: #000066;">fclose</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
php 数组获取路径
使用此功能,您可以通过类似“abc / def / ghi”的路径在数组中查找值。<br/>这个功能是一个想法,我几个月前...
<span style="color: #000000; font-weight: bold;">function</span> ArrayGetPath<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$data</span>, <span style="color: #0000ff;">$path</span>, &<span style="color: #0000ff;">$result</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$found</span> = <span style="color: #000000; font-weight: bold;">true</span>;
<span style="color: #0000ff;">$path</span> = <a href="http://www.php.net/explode"><span style="color: #000066;">explode</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">"/"</span>, <span style="color: #0000ff;">$path</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$x</span>=<span style="color: #cc66cc;">0</span>; <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$x</span> < <a href="http://www.php.net/count"><span style="color: #000066;">count</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$path</span><span style="color: #66cc66;">)</span> and <span style="color: #0000ff;">$found</span><span style="color: #66cc66;">)</span>; <span style="color: #0000ff;">$x</span>++<span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$key</span> = <span style="color: #0000ff;">$path</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$x</span><span style="color: #66cc66;">]</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$data</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$key</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$data</span> = <span style="color: #0000ff;">$data</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$key</span><span style="color: #66cc66;">]</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">else</span> <span style="color: #66cc66;">{</span> <span style="color: #0000ff;">$found</span> = <span style="color: #000000; font-weight: bold;">false</span>; <span style="color: #66cc66;">}</span>
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$result</span> = <span style="color: #0000ff;">$data</span>;
<span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$found</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// Please look at the examples (below)</span>
php 中间减少一个字符串
在中间减少一个字符串,将整个单词保持在一起
<span style="color: #808080; font-style: italic;">/**
* Reduce a string by the middle, keeps whole words together
*
* @param string $string
* @param int $max (default 50)
* @param string $replacement (default [...])
* @return string
* @author david at ethinkn dot com
* @author loic at xhtml dot ne
* @author arne dot hartherz at gmx dot net
*/</span>
<span style="color: #000000; font-weight: bold;">function</span> strMiddleReduceWordSensitive<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$string</span>, <span style="color: #0000ff;">$max</span> = <span style="color: #cc66cc;">50</span>, <span style="color: #0000ff;">$rep</span> = <span style="color: #ff0000;">'[...]'</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$strlen</span> = <a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$string</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$strlen</span> <= <span style="color: #0000ff;">$max</span><span style="color: #66cc66;">)</span>
<span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$string</span>;
<span style="color: #0000ff;">$lengthtokeep</span> = <span style="color: #0000ff;">$max</span> - <a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$rep</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$start</span> = <span style="color: #cc66cc;">0</span>;
<span style="color: #0000ff;">$end</span> = <span style="color: #cc66cc;">0</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$lengthtokeep</span> % <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span> == <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$start</span> = <span style="color: #0000ff;">$lengthtokeep</span> / <span style="color: #cc66cc;">2</span>;
<span style="color: #0000ff;">$end</span> = <span style="color: #0000ff;">$start</span>;
<span style="color: #66cc66;">}</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$start</span> = <a href="http://www.php.net/intval"><span style="color: #000066;">intval</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$lengthtokeep</span> / <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$end</span> = <span style="color: #0000ff;">$start</span> + <span style="color: #cc66cc;">1</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$i</span> = <span style="color: #0000ff;">$start</span>;
<span style="color: #0000ff;">$tmp_string</span> = <span style="color: #0000ff;">$string</span>;
<span style="color: #b1b100;">while</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$i</span> < <span style="color: #0000ff;">$strlen</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$tmp_string</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span> and <span style="color: #0000ff;">$tmp_string</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">]</span> == <span style="color: #ff0000;">' '</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$tmp_string</span> = <a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$tmp_string</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #0000ff;">$i</span><span style="color: #66cc66;">)</span> . <span style="color: #0000ff;">$rep</span>;
<span style="color: #0000ff;">$return</span> = <span style="color: #0000ff;">$tmp_string</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$i</span>++;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$i</span> = <span style="color: #0000ff;">$end</span>;
<span style="color: #0000ff;">$tmp_string</span> = <a href="http://www.php.net/strrev"><span style="color: #000066;">strrev</span></a> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$string</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">while</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$i</span> < <span style="color: #0000ff;">$strlen</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$tmp_string</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span> and <span style="color: #0000ff;">$tmp_string</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$i</span><span style="color: #66cc66;">]</span> == <span style="color: #ff0000;">' '</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #0000ff;">$tmp_string</span> = <a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$tmp_string</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #0000ff;">$i</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$return</span> .= <a href="http://www.php.net/strrev"><span style="color: #000066;">strrev</span></a> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$tmp_string</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #0000ff;">$i</span>++;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$return</span>;
<span style="color: #b1b100;">return</span> <a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$string</span>, <span style="color: #cc66cc;">0</span>, <span style="color: #0000ff;">$start</span><span style="color: #66cc66;">)</span> . <span style="color: #0000ff;">$rep</span> . <a href="http://www.php.net/substr"><span style="color: #000066;">substr</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$string</span>, - <span style="color: #0000ff;">$end</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
php 随机文件
此函数返回给定文件夹中的随机文件。它还允许扩展过滤。
<span style="color: #000000; font-weight: bold;">function</span> RandomFile<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$folder</span>=<span style="color: #ff0000;">''</span>, <span style="color: #0000ff;">$extensions</span>=<span style="color: #ff0000;">'.*'</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// fix path:</span>
<span style="color: #0000ff;">$folder</span> = <a href="http://www.php.net/trim"><span style="color: #000066;">trim</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$folder</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$folder</span> = <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$folder</span> == <span style="color: #ff0000;">''</span><span style="color: #66cc66;">)</span> ? <span style="color: #ff0000;">'./'</span> : <span style="color: #0000ff;">$folder</span>;
<span style="color: #808080; font-style: italic;">// check folder:</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span>!<a href="http://www.php.net/is_dir"><span style="color: #000066;">is_dir</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$folder</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span> <a href="http://www.php.net/die"><span style="color: #000066;">die</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'invalid folder given!'</span><span style="color: #66cc66;">)</span>; <span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// create files array</span>
<span style="color: #0000ff;">$files</span> = <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// open directory</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$dir</span> = @<a href="http://www.php.net/opendir"><span style="color: #000066;">opendir</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$folder</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// go trough all files:</span>
<span style="color: #b1b100;">while</span><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$file</span> = <a href="http://www.php.net/readdir"><span style="color: #000066;">readdir</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$dir</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span>!<a href="http://www.php.net/preg_match"><span style="color: #000066;">preg_match</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'/^<span style="color: #000099; font-weight: bold;">\.</span>+$/'</span>, <span style="color: #0000ff;">$file</span><span style="color: #66cc66;">)</span> and
<a href="http://www.php.net/preg_match"><span style="color: #000066;">preg_match</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'/<span style="color: #000099; font-weight: bold;">\.</span>('</span>.<span style="color: #0000ff;">$extensions</span>.<span style="color: #ff0000;">')$/'</span>, <span style="color: #0000ff;">$file</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// feed the array:</span>
<span style="color: #0000ff;">$files</span><span style="color: #66cc66;">[</span><span style="color: #66cc66;">]</span> = <span style="color: #0000ff;">$file</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// close directory</span>
<a href="http://www.php.net/closedir"><span style="color: #000066;">closedir</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$dir</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">else</span> <span style="color: #66cc66;">{</span>
<a href="http://www.php.net/die"><span style="color: #000066;">die</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'Could not open the folder "'</span>.<span style="color: #0000ff;">$folder</span>.<span style="color: #ff0000;">'"'</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/count"><span style="color: #000066;">count</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$files</span><span style="color: #66cc66;">)</span> == <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<a href="http://www.php.net/die"><span style="color: #000066;">die</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'No files where found :-('</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// seed random function:</span>
<a href="http://www.php.net/mt_srand"><span style="color: #000066;">mt_srand</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">(</span>double<span style="color: #66cc66;">)</span><a href="http://www.php.net/microtime"><span style="color: #000066;">microtime</span></a><span style="color: #66cc66;">(</span><span style="color: #66cc66;">)</span>*<span style="color: #cc66cc;">1000000</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// get an random index:</span>
<span style="color: #0000ff;">$rand</span> = <a href="http://www.php.net/mt_rand"><span style="color: #000066;">mt_rand</span></a><span style="color: #66cc66;">(</span><span style="color: #cc66cc;">0</span>, <a href="http://www.php.net/count"><span style="color: #000066;">count</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$files</span><span style="color: #66cc66;">)</span><span style="color: #cc66cc;">-1</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// check again:</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span>!<a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$files</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$rand</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<a href="http://www.php.net/die"><span style="color: #000066;">die</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'Array index was not found! very strange!'</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// return the random file:</span>
<span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$folder</span> . <span style="color: #0000ff;">$files</span><span style="color: #66cc66;">[</span><span style="color: #0000ff;">$rand</span><span style="color: #66cc66;">]</span>;
<span style="color: #66cc66;">}</span>
php 如何进行POST请求
此示例显示如何使用套接字连接对另一个Web服务器执行简单的POST请求。
<span style="color: #000000; font-weight: bold;">function</span> post_request<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$url</span>, <span style="color: #0000ff;">$data</span>, <span style="color: #0000ff;">$referer</span>=<span style="color: #ff0000;">''</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// Convert the data array into URL Parameters like a=b&foo=bar etc.</span>
<span style="color: #0000ff;">$data</span> = http_build_query<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$data</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// parse the given URL</span>
<span style="color: #0000ff;">$url</span> = <a href="http://www.php.net/parse_url"><span style="color: #000066;">parse_url</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$url</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$url</span><span style="color: #66cc66;">[</span><span style="color: #ff0000;">'scheme'</span><span style="color: #66cc66;">]</span> != <span style="color: #ff0000;">'http'</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<a href="http://www.php.net/die"><span style="color: #000066;">die</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'Error: Only HTTP request are supported !'</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// extract host and path:</span>
<span style="color: #0000ff;">$host</span> = <span style="color: #0000ff;">$url</span><span style="color: #66cc66;">[</span><span style="color: #ff0000;">'host'</span><span style="color: #66cc66;">]</span>;
<span style="color: #0000ff;">$path</span> = <span style="color: #0000ff;">$url</span><span style="color: #66cc66;">[</span><span style="color: #ff0000;">'path'</span><span style="color: #66cc66;">]</span>;
<span style="color: #808080; font-style: italic;">// open a socket connection on port 80 - timeout: 30 sec</span>
<span style="color: #0000ff;">$fp</span> = <a href="http://www.php.net/fsockopen"><span style="color: #000066;">fsockopen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$host</span>, <span style="color: #cc66cc;">80</span>, <span style="color: #0000ff;">$errno</span>, <span style="color: #0000ff;">$errstr</span>, <span style="color: #cc66cc;">30</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// send the request headers:</span>
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"POST $path HTTP/1.1<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"Host: $host<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><span style="color: #0000ff;">$referer</span> != <span style="color: #ff0000;">''</span><span style="color: #66cc66;">)</span>
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"Referer: $referer<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"Content-type: application/x-www-form-urlencoded<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"Content-length: "</span>. <a href="http://www.php.net/strlen"><span style="color: #000066;">strlen</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$data</span><span style="color: #66cc66;">)</span> .<span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #ff0000;">"Connection: close<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span><span style="color: #66cc66;">)</span>;
<a href="http://www.php.net/fputs"><span style="color: #000066;">fputs</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #0000ff;">$data</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$result</span> = <span style="color: #ff0000;">''</span>;
<span style="color: #b1b100;">while</span><span style="color: #66cc66;">(</span>!<a href="http://www.php.net/feof"><span style="color: #000066;">feof</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span> <span style="color: #66cc66;">{</span>
<span style="color: #808080; font-style: italic;">// receive the results of the request</span>
<span style="color: #0000ff;">$result</span> .= <a href="http://www.php.net/fgets"><span style="color: #000066;">fgets</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span>, <span style="color: #cc66cc;">128</span><span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">else</span> <span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">return</span> <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">(</span>
<span style="color: #ff0000;">'status'</span> => <span style="color: #ff0000;">'err'</span>,
<span style="color: #ff0000;">'error'</span> => <span style="color: #ff0000;">"$errstr ($errno)"</span>
<span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #808080; font-style: italic;">// close the socket connection:</span>
<a href="http://www.php.net/fclose"><span style="color: #000066;">fclose</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$fp</span><span style="color: #66cc66;">)</span>;
<span style="color: #808080; font-style: italic;">// split the result header from the content</span>
<span style="color: #0000ff;">$result</span> = <a href="http://www.php.net/explode"><span style="color: #000066;">explode</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">"<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>"</span>, <span style="color: #0000ff;">$result</span>, <span style="color: #cc66cc;">2</span><span style="color: #66cc66;">)</span>;
<span style="color: #0000ff;">$header</span> = <a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$result</span><span style="color: #66cc66;">[</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span> ? <span style="color: #0000ff;">$result</span><span style="color: #66cc66;">[</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">]</span> : <span style="color: #ff0000;">''</span>;
<span style="color: #0000ff;">$content</span> = <a href="http://www.php.net/isset"><span style="color: #000066;">isset</span></a><span style="color: #66cc66;">(</span><span style="color: #0000ff;">$result</span><span style="color: #66cc66;">[</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">]</span><span style="color: #66cc66;">)</span> ? <span style="color: #0000ff;">$result</span><span style="color: #66cc66;">[</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">]</span> : <span style="color: #ff0000;">''</span>;
<span style="color: #808080; font-style: italic;">// return as structured array:</span>
<span style="color: #b1b100;">return</span> <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">(</span>
<span style="color: #ff0000;">'status'</span> => <span style="color: #ff0000;">'ok'</span>,
<span style="color: #ff0000;">'header'</span> => <span style="color: #0000ff;">$header</span>,
<span style="color: #ff0000;">'content'</span> => <span style="color: #0000ff;">$content</span>
<span style="color: #66cc66;">)</span>;
<span style="color: #66cc66;">}</span>
php IPAdress是否有效
检查IP地址是否具有有效格式
<span style="color: #808080; font-style: italic;">// Sorry, currently I did not make a routine for IPv6,</span>
<span style="color: #808080; font-style: italic;">// but I'm sure you find one at: http://regexlib.com/</span>
<span style="color: #000000; font-weight: bold;">function</span> IsIPValid<span style="color: #66cc66;">(</span><span style="color: #0000ff;">$ip</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">(</span><a href="http://www.php.net/preg_match"><span style="color: #000066;">preg_match</span></a><span style="color: #66cc66;">(</span><span style="color: #ff0000;">'/^[0-9]{1,3}<span style="color: #000099; font-weight: bold;">\.</span>[0-9]{1,3}<span style="color: #000099; font-weight: bold;">\.</span>[0-9]{1,3}<span style="color: #000099; font-weight: bold;">\.</span>[0-9]{1,3}$/'</span>, <span style="color: #0000ff;">$ip</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">)</span><span style="color: #66cc66;">{</span>
<span style="color: #b1b100;">return</span> <span style="color: #000000; font-weight: bold;">true</span>;
<span style="color: #66cc66;">}</span>
<span style="color: #b1b100;">return</span> <span style="color: #000000; font-weight: bold;">false</span>;
<span style="color: #66cc66;">}</span>