说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

直接拿来用,九个超实用的PHP代码片段(二)

HTML文档下载 WORD文档下载 PDF文档下载
当PHP开发者花费数个小时为网页编码或创建应用时,他们深知这些代码的重要性。为了帮助开发者节约编码时间,笔者收集了一些较为实用的代码片段,帮助开发者提高工作效率。

每位程序员和开发者都喜欢讨论他们最爱的代码片段,尤其是当PHP开发者花费数个小时为网页编码或创建应用时,他们更知道这些代码的重要性。为了节约编码时间,笔者收集了一些较为实用的代码片段,帮助开发者提高工作效率。>>> 点击查看PHP代码片段(一)


1) Whois query using PHP ——利用PHP获取Whois请求 

利用这段代码,在特定的域名里可获得whois信息。把域名名称作为参数,并显示所有域名的相关信息。

function whois_query($domain) {    // fix the domain name:    $domain = strtolower(trim($domain));    $domain = preg_replace('/^http:\/\//i', '', $domain);    $domain = preg_replace('/^www\./i', '', $domain);    $domain = explode('/', $domain);    $domain = trim($domain[0]);    // split the TLD from domain name    $_domain = explode('.', $domain);    $lst = count($_domain)-1;    $ext = $_domain[$lst];    // You find resources and lists     // like these on wikipedia:     //    // <a href="http://de.wikipedia.org/wiki/Whois">http://de.wikipedia.org/wiki/Whois</a>    //    $servers = array(        "biz" => "whois.neulevel.biz",        "com" => "whois.internic.net",        "us" => "whois.nic.us",        "coop" => "whois.nic.coop",        "info" => "whois.nic.info",        "name" => "whois.nic.name",        "net" => "whois.internic.net",        "gov" => "whois.nic.gov",        "edu" => "whois.internic.net",        "mil" => "rs.internic.net",        "int" => "whois.iana.org",        "ac" => "whois.nic.ac",        "ae" => "whois.uaenic.ae",        "at" => "whois.ripe.net",        "au" => "whois.aunic.net",        "be" => "whois.dns.be",        "bg" => "whois.ripe.net",        "br" => "whois.registro.br",        "bz" => "whois.belizenic.bz",        "ca" => "whois.cira.ca",        "cc" => "whois.nic.cc",        "ch" => "whois.nic.ch",        "cl" => "whois.nic.cl",        "cn" => "whois.cnnic.net.cn",        "cz" => "whois.nic.cz",        "de" => "whois.nic.de",        "fr" => "whois.nic.fr",        "hu" => "whois.nic.hu",        "ie" => "whois.domainregistry.ie",        "il" => "whois.isoc.org.il",        "in" => "whois.ncst.ernet.in",        "ir" => "whois.nic.ir",        "mc" => "whois.ripe.net",        "to" => "whois.tonic.to",        "tv" => "whois.tv",        "ru" => "whois.ripn.net",        "org" => "whois.pir.org",        "aero" => "whois.information.aero",        "nl" => "whois.domain-registry.nl"    );    if (!isset($servers[$ext])){        die('Error: No matching nic server found!');    }    $nic_server = $servers[$ext];    $output = '';    // connect to whois server:    if ($conn = fsockopen ($nic_server, 43)) {        fputs($conn, $domain."\r\n");        while(!feof($conn)) {            $output .= fgets($conn,128);        }        fclose($conn);    }    else { die('Error: Could not connect to ' . $nic_server . '!'); }    return $output;}

2) Text messaging with PHP using the TextMagic API ——使用TextMagic API 获取PHP Test信息

TextMagic引入强大的核心API,可轻松将SMS发送到手机。该API是需要付费。

the TextMagic PHP librequire('textmagic-sms-api-php/TextMagicAPI.php');// Set the username and password information$username = 'myusername';$password = 'mypassword';// Create a new instance of TM$router = new TextMagicAPI(array(	'username' => $username,	'password' => $password));// Send a text message to '999-123-4567'$result = $router->send('Wake up!', array(9991234567), true);// result:  Result is: Array ( [messages] => Array ( [19896128] => 9991234567 ) [sent_text] => Wake up! [parts_count] => 1 )

3) Get info about your memory usage——获取内存使用率

这段代码帮助你获取内存使用率。

echo "Initial: ".memory_get_usage()." bytes \n";/* printsInitial: 361400 bytes*/// let's use up some memoryfor ($i = 0; $i < 100000; $i++) {	$array []= md5($i);}// let's remove half of the arrayfor ($i = 0; $i < 100000; $i++) {	unset($array[$i]);}echo "Final: ".memory_get_usage()." bytes \n";/* printsFinal: 885912 bytes*/echo "Peak: ".memory_get_peak_usage()." bytes \n";/* printsPeak: 13687072 bytes*/

4) Display source code of any webpage——查看任意网页源代码

如果你想查看网页源代码,那么只需更改第二行的URL,源代码就会在网页上显示出。

<?php // display source code $lines = file('http://google.com/'); foreach ($lines as $line_num => $line) { 	// loop thru each line and prepend line numbers	echo "Line #{$line_num} : " . htmlspecialchars($line) . "\n";}

5) Create data uri’s——创建数据uri

通过使用此代码,你可以创建数据Uri,这对在HTML/CSS中嵌入图片非常有用,可帮助节省HTTP请求。

function data_uri($file, $mime) {  $contents=file_get_contents($file);  $base64=base64_encode($contents);  echo "data:$mime;base64,$base64";}

6) Detect location by IP——通过IP检索出地理位置

这段代码帮助你查找特定的IP,只需在功能参数上输入IP,就可检测出位置。

function detect_city($ip) {        $default = 'UNKNOWN';        if (!is_string($ip) || strlen($ip) < 1 || $ip == '127.0.0.1' || $ip == 'localhost')             $ip = '8.8.8.8';         $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';                  $url = 'http://ipinfodb.com/ip_locator.php?ip=' . urlencode($ip);         $ch = curl_init();                  $curl_opt = array(             CURLOPT_FOLLOWLOCATION  => 1,            CURLOPT_HEADER      => 0,            CURLOPT_RETURNTRANSFER  => 1,            CURLOPT_USERAGENT   => $curlopt_useragent,            CURLOPT_URL       => $url,            CURLOPT_TIMEOUT         => 1,            CURLOPT_REFERER         => 'http://' . $_SERVER['HTTP_HOST'],        );        curl_setopt_array($ch, $curl_opt);        $content = curl_exec($ch);        if (!is_null($curl_info)) {            $curl_info = curl_getinfo($ch);        }        curl_close($ch);        if ( preg_match('{City : ([^<]*)}i’, $content, $regs) ) { $city = $regs[1]; } if ( preg_match(‘{State/Province : ([^<]*) }i’, $content, $regs) ) { $state = $regs[1]; } if( $city!=” && $state!=” ){ $location = $city . ‘, ‘ . $state; return $location; }else{ return $default; } }

7) Detect browser language——查看浏览器语言

检测浏览器使用的代码脚本语言。

function get_client_language($availableLanguages, $default='en'){	if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {		$langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);		foreach ($langs as $value){			$choice=substr($value,0,2);			if(in_array($choice, $availableLanguages)){				return $choice;			}		}	} 	return $default;}

8) Check if server is HTTPS——检测服务器是否是HTTPS

if ($_SERVER['HTTPS'] != "on") { 	echo "This is not HTTPS";}else{	echo "This is HTTPS";}

9) Generate CSV file from a PHP array——在PHP数组中生成.csv 文件

function generateCsv($data, $delimiter = ',', $enclosure = '"') {   $handle = fopen('php://temp', 'r+');   foreach ($data as $line) {		   fputcsv($handle, $line, $delimiter, $enclosure);   }   rewind($handle);   while (!feof($handle)) {		   $contents .= fread($handle, 8192);   }   fclose($handle);   return $contents;}
英文出自:Designzum

CTO如何避免决策失控(二):遭遇棘手问题的七种迹象 微软面向开发者提前发布Windows 8.1 安抚不满情绪 PostgreSQL 9.3发布,可靠性、可用性获得较大提升! Web设计的新宠儿:卡片式设计 LSI:从“计算”架构到“数据流”架构的变迁 [开源推荐]TurboGears:一站式的Python开发框架集合 腾讯云公测终究还是来了 BAT云大战将开启? iOS 7将从这三方面影响IT界 超越Google,他企图将整个互联网塞进1台电脑 2013互联网安全大会议题先睹为快之CSA中国理事赵粮 移动建站工具(二):分秒钟DIY一个移动网站 2013上半年中国移动互联网报告,在线完整版 iOS开发者必备:九大设计类工具 已到“迟暮之年”?微软投资者提议两“救世主”外部候选 【SDCC讲师专访】Joseph G. Brown:云带来的软件销售方式变革 用户界面设计攻略:设计师需注意的九大要点 Google Glass的竞争对手来了:看YC演示日的五款新孵化项目! GPU Saturday技术沙龙:OpenCL程序员眼中的下一代APU架构 黑帽大会演讲中国第一人:从攻到防,从白帽黑客到创业者 15个步骤创立技术公司,并收获千万用户(完结) CTO容易犯的三大错误 谷歌艺术计划:互联网能否取代真实的博物馆? Hadoop技术沙龙:Hortonworks技术研发总监展望Hadoop 2.0 Marissa Mayer:雅虎月活跃用户增长了20%达8亿 移动用户3.5亿 气死偷车贼:脑电波防盗技术,让偷车贼无计可施 TIOBE 2013年9月编程语言排行榜:Transact-SQL首次进入前十 前Oracle总裁Charles Phillips:商业软件领域的“乔布斯” 留住你的用户:8款第三方移动推送服务 人气最旺:主流移动应用创建工具大合集(一) 不要强迫用户注册,请让他们先试用产品 Eve:基于Python的REST API框架 我应该去东软吗?? 求救~~~~安装完WINXP,进入系统前会出现错误窗 怎么现在没法用search了? 一个菜鸟的问题,关于事件的加载 求救~~~安装完WINXP,进入系统前会出现错误窗 关于速度,效率,VB IIS ASP COM高手请进 我用extracticon将图标从exe文件中提取出来了,请问高手们,如何保存为ICO文件。 急急急,如何解决多窗口关联及激活问题!高分相送 请教一下,如何刷新ie浏览器,我用postmessage模拟按键F5,没成功,谢谢 怎么样把多个程序打包到一个文件中,然后怎么样释放出来!高分求答案(分两次给100分)! 为什么计算字段不能排序 我是新手,高手教教我吧!!! 如何激活oracle8.16的监听??? Domino Administrator 中的“配置”->“消息处理”->“网络域” C#究竟是什么东东?象C++还是象JAVA? 求dxdbtreeview 1.2 for d5 有人知道天津英业达吗? vb6如何结合DirectX编程? 怎樣才能把數據寫入BIOS中的DMI里去? 我要用vb得到一个EXCEL表格中的内容,经过数据处理再把数据写入新的EXCEL表格,如何实现? 心情不好,散分 我怎樣才能把mssqlserver中的數據庫導出到mysql中? >>有人知道天津英业达吗? 在VC中,如何编写Makefile,及如何用 .mak 文件编译,联接程序(来者有分) 我的电脑经常在使用时出现“EXPLORER出现非法操作即将关闭……”然后死机,怎么办? JavaScript一问!!! windows nt 的问题(急)? 如何设定paradox的自增长自段 关于报表中零值显示问题求助 那位知道控制打印机的win32函数,1、使其打印完毕不换页(卷纸) 2、以及换行的函数!!! 请问怎样捕获WINDOWS的文件拷贝事件? ■■请问WIN2000下对内存区的访问如何进行,类似于游戏修改等软件?■■ 内存分配不能分配?该用什么来分配内存? 做图象处理可以,作这个不可以? 如何将上次表单的残余值给清掉? 如何打开一个窗口? 搞不明白?各位高手帮帮忙!! 如何在win98与2000共同使用同一软件? 有个问题,怪怪怪 高分求救:做单片机的前途怎么样? 如何在VB中制作复杂的动态报表? (新手急需) 一个分页进行选择的问题!!!急呀。。。。。。。。。 虚心求教DataReport打印问题,特着急! 有用DirectX作软件界面的吗?(不是游戏) VB中有没有类似日历的哪种控件啊?详细一点,thx 如何上传图文混排的的文件到数据库中? 菜鸟提问 怎么样才能实现这样的界面啊?各位高手请帮忙! 建Lotus表再把数据导进去,用delphi怎么做? 哪里可以找到数据库及相应的某系统需求分析 请教如何控制showmessage弹出对话框的外观. 统计出table1中dm字段的内容为"002"的有几个,怎么办?请指教! 有一个字段名叫DM,原来是2位字符型的,现在需要改成3位,即在前面自动加一个0即可,请问用什么语句? 求描写天空的唯美句子 那一次,我被感动了 作文800字 以"__________的日子"为题,写一篇作文,600字以上!快开学了! 中央一套 《开学第一课》我的梦中国梦 观后感 (600字左右)好的,另加赏金50! 《这一幕感动了我》 400字真实一点 不要多也不要少400字写一件具体事例 有情景 有感受 求一篇600字的,以"做个有心人"为题的文章! 中央一套 开学第一课我的梦中国梦 观后感 新年作文600字以上,初二 1、皇上招你进上书房伺候时,你无意间听到与有大臣参奏与你世家有关的不利的事情.皇上已经知道你听见了,你应当怎样应对?请自行演绎.演绎时请注意心理和动作的描写.字数不少于100.2、皇 找母爱父爱师生情的美文还有人与自然,写景的. 感动为话题 不少于800字 若在宫中,你的好姐妹因嫉妒你得到皇上的宠爱,故意散布谣言,说你对皇上不忠,在宫中有相爱的男子,宫中有很多人都在背后说你的坏话,而你朋友也因此离你而去,你该怎么办? 求体现父爱 母爱 友谊 或者师生情的几件事例 有事件就行 我只要素材 六年级上册语文课文第一课《山中访友》视频 推荐些纯宫斗小说甄嬛传 金枝玉叶 .倾世皇妃 落尽梨花春又了 媚行深宫 宸宫这些都看过啦 父爱或母爱的小故事50字5篇 六年级上册语文课文第一课《山中访友》预习内容 六年级语文第一课山中访友 观太空授课有感600字, 作文--我心中的桥(父爱.母爱.友谊.微笑...) 仿写6年级上册语文书第一课《山中访友》 求《我的梦,中国梦》观后感,400字左右! 宫斗外貌描写,妖艳点必须妖艳 填空;我们的天空给予我们[ ],我们将[ ] 消防疏散体验作文 800字的 宫斗里怎么描写人物相貌 给我一个 我们的天空 的有效链接《我们的天空》 BEYOND我是用来做空间背景音乐的我在百度都找不到有效的,音乐放不了. 这一天使我感受到作文800字 宫斗 首饰.具体描写首饰的样子.描写,描写样子什么的. 我们的天空给予我们遍地的彩虹,我们将共享.我们的河水给予我们不朽的生命我们将报纸他们的洁净.仿写.给予我们.,我们将.两个 帮帮忙是关于和平的~好的话再加悬赏 我的读书故事作文600字 文章和感悟200字 描写宇宙的词语今天晚上就要10月20日6点以前谢谢!不要太少不然我不给分的另外这些我已经写过了不要再发:广袤无垠 浩淼 神秘莫测 未知 无边无际 我的读书故事作文 600字 好作文 我们的天空 描写宇宙的词越多越好 写关于《中国首次太空授课》作文 500或者600字. 以”我们的天空“为话题 作文快意点哈 BEYOND的歌《我们的天空》歌词家驹永恒的乐神,四大天王只是浮云,你是永远的好声音,家驹,爱你 同学之间的关爱作文700字以上 《第七条猎狗》读后感200字以内.200字以内! 求高手帮忙找一些描写宇宙的句子如题.我写作文要用. 我终于来到了太空世界作文 500字左右 《小溪流的歌》 读后感200字以内 六年级课文山中访友主要内容,急用 太空授课的作文500字!我同学让我查一篇这个的作文!好像是大概5年级的水平吧!复制的也凑后!只要达到500字就oK啦! 宫斗的动作,语言、神态 描写宇宙的句子一定要是句子,诗词,或者是一小段(不要一大段的,要不要词语) 我的梦想作文500字(关于太空) 《山中访友》的课文主要内容是 谁有六年级上册的山中访友原文?人教版的六上第一课 求宫斗殿试回答~如果汝原来是一位贵姬,应深得皇上宠爱,福贵妃嫉妒汝,陷害与汝,使汝降为宝林,汝亦知道其中的原因请问汝会怎做?(不少与200字) 描写天空的比喻句最好还有描写月亮、星星的比喻句! 描写太空中景物的句子就是我来到了太空,看见行星、白羊星座、火星……这些景物,他们长什么样,最好运用修辞手法 求解答宫斗殿试题目若小主受某高位妃嫔胁迫,必须残害他人腹中之子,否则小主家人即有性命之忧,小主如何自处?(字数充足,急求,谢谢各位) 六年级上册语文课文第一课《山中访友》仿写 描写宇宙变化的语句 苏轼有哪句诗句描写的是“墨泼的天空”?必须是苏轼的诗句!回答正确者必赏! 描写天空的排比句要优美,是自己写的. 以“高度”为题的作文,600字,快
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn