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

直接拿来用,九个超实用的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

关于 VS2010 异常捕获 在线编程教育平台Treehouse推免费iPad应用 微软发布Windows 8.1企业预览版 功能更强劲 如何管理和优化日益增长的代码复杂度? SDCC 2013大会讲师名单议题更新 8月1日前3.8折优惠截止 IBM Rational首席技术官:DevOps是一门哲学 Mozilla联手黑莓推进Web安全技术,推出开源测试平台Minion 苹果如何培养SOHO一族高效工作 再造Ruby:CryENGINE 3.5游戏引擎特性详解 Eclipse基金会涉足物联网,M2M标准是否已获东风? SDN部署前必须考虑的7个事项 【云先锋 40】初创公司DataStax:专注于Cassandra,三年融资8370万美元 内容创作工具的革新:Facebook前CTO推文字处理应用Quip 微软为Android手机推出Office 仅面向Office 365用户开放使用 编程、创业、开源感悟——SDCC 2013讲师云风专访 原生广告:移动推广的热门新宠 隐私之战:金山手机毒霸宣布开放安全检测平台 世界人民的头上有张监控大网——Xkeyscore 美国“监控门”情报收集系统 X-Keyscore 技术揭秘 为啥REST如此重要? 并非PHP Frameworks而是WordPress让PHP更加流行! Twitter Bootstrap深受开发者喜爱的11大理由 假如3D打印机也有“撤销”键 大数据的游戏运营:不能起死回生,只能锦上添花 15个步骤创立技术公司,并收获千万用户(一) 红帽再发力 将MongoDB整合到Linux系统 ZestFinance:前谷歌CIO创立的机器学习+大数据分析公司 7月份浏览器份额:IE仍最受欢迎 Chrome成最大赢家 2013 Q2 Android手机出货量再创新高 iPhone三年来新低 如何一个人打造日PV百万的网站架构——SDCC 2013讲师曹力专访 【一周观察】动辄9位数以上的投资,云数据中心缺口巨大! Conn.OpenSchema怎么得到字段的信息? 一个进程写在共享内存中的数据被另一个进程读出去后的问题 大家开心开心吧! 笑过后体会体会...... asp与数据库连接的问题?急,急!(在线等待) 大家是怎么查VCL类库的类及函数的? 在线程里有无限循环时,好象不跳出循环就无法终止线程,是吗 UNIX的线程有没有类似Windows线程的消息队列和消息机制? 哪位大虾知道如何在网页中快速刷新显示后台计算的数据? 请问有谁知道PrinterResolution怎么和打印机对象连在一起呀, 偶有一个惊人的发现! 对话框中的按钮我怎么让它继承我自己的类? 请问有谁知道PrinterResolution怎么和打印机对象连在一起呀, 装了腾讯的浏览器现在删了 可是用cterm点击里面的网址还会调用腾讯的浏览器 如何修改注册表 那个键值? 电子邮件的问题 怎样给为我解答问题的注册用户打分? 谁做过这样的新闻系统! 为什么RealPlayer放有些网站的流媒体文件时会出错? 请问什么地方有软件开发标准。如国标,国军标等。 如何取得读网页时ie的状态,如正在下载,完毕等等? 朋友们能不能提供我一些关于VC读取文件操作的资料? 关于数据库服务器和备份的问题 win2kPRO 简单问题,高分相送!!在线发分,第一个答对者,定送此分!!!!!! c程序总出现"out of memory..." bzszp(蝎子)和ATCG(ATCG),谢谢!请问可以给我你们的E-mail吗?我以后还有些问题想请教你们! 如何设置java环境 更改工作站的下载等权限 制作一个修改程序外表的东西 怎样ENABLE 注册表编辑 MFC向导生成的基本对话框程序,一按回车就会退出,怎么设置都没有用.怎么办? 小弟下个学期就学vc了,想在这个暑假里好好的去接触接触但是不知道改看那些书好!还请~~~~~~~?高分!! 请问这个错误是什么原因啊? QMAIL高手:关于分页的问题,函数vauth_getall() 制作修改程序外表的东西 初学者学习编程什么样的学校比较适合? 制作修改程序外表的东西 原本对这个世界失望了,居然还发现还有和我一样善良的人,你让我有了活下去,继续灌水事业的勇气,谢谢给我捐献可用分的好人! ******初学者问题 ,如何实现2个Edit框同步******* 请问DataGrid如何和ADO控件梆定? 在servlet中设置了一个javaBean的属性,怎样把他传递到jsp中呢? ADOStoredProc1中存的游标数据如何附给变量中???带原码) 如何提取OLE 容器的嵌入对象? 大家喜欢什么格式的电子书? chm, pdf, html, doc,.... 怎样才能向一个文件中插入一个汉字? 在Word中快速插入日期和时间 备份access数据库原代码,看看错在哪里? 如何写收取、检索POP3邮箱的页面? 代码智能感应? 请教:c++编译器的问题 承蒙看得起~~最近半个月平均没天收到两封带毒邮件,散分:( WinSock控件编程中的一个小问题 铝和氧化镁混合高温加热的化学方程式 水蒸气比水重 为什么云却飘在天上 超导体是什么? 碳高温条件下能不能还原氧化镁?(以前课本上有这个方程式,现在人教版已经删掉了) 云是什么状态的水? 超导体和超导材料有什么区别? 氧化镁粉经过高温后会有什么反映装在管子里面加温 隔空的 云是什么状态水 熔化热最大的晶体是?不行的话给出一个融化热很大的也可以啊 广州市面上适合湖南寒冷气候的花 天上云怎么承受那么多的水 修改病句:①4月28日至10月22日,以“天人长安、创意自然——城市与自然和谐共生”为主题的2011年西安世界园艺博览会在西安浐灞生态区成功举办.②这是北京奥运会、上海世博会之后,中国 通常ed结尾的是形容词吗? 为什么水0到4度是热缩冷胀的?(原子角度说说最好) 什么是超导体?超导条件? 我要《小石潭记》《岳阳楼记》《醉翁亭记》的相关考题(最好含答案…)谢了谢了谢了 梦游南瓜飘过… = = 4度的水热缩冷胀的危害越多越好,急用! 超导体除了超导 还有什么性质 为什么? 我想知道,湖南的气候怎么样,我们山东人能够适应吗?我要报考湖南的大学!那重庆武汉成都呢,是不是都差不多? 水在4度以下遵循热缩冷胀的规律,在液态时分子之间的距离最小,既然是最小怎么还能压缩? 2.3.4.5题 湖南气候是否适合发展太阳能电池 天人合一是什么境界天人合一这后是什么表现!什么算是天人合一! 第1.2. 湖南的天气是否适用热泵热水器吗?特别是在冬季,热泵热水器是否适用湖南? 天人之辩的价值观内涵是什么 西安世园会长安塔的文化内涵是什么?是张锦秋大师设计的,网上的介绍都太简单了,需要详细点的, 能把这个公式改成选股公式吗?AA:=100*(HHV(HIGH,68)-CLOSE)/(HHV(HIGH,68)-LLV(LOW,68));量能:STICKLINE(AA>=2,AA,0,2,1),COLORBBBBBB;饱和:STICKLINE(AA>=99,AA,0,2,1),COLORRED;饱和度:STICKLINE(AA>=99,90,100,2,1),COLORGREEN;红柱出现时 北美洲东部沿海与亚洲的东部沿海相比,相同的气候类型是、、、、.不相同的气候类型是、、、、. 西安世园会长安花谷 HCL常温下的状态? 有关“友情”的好词好句 冷的作文200字 作文里没有冷字 照样子,写句子.天上飘着云.要2句 一物体重9.8牛,浸没在水中为4.9N,问浮力为多少 用测室温的温度计测水温,读数和专用测水温的温度计一样吗? 硝酸与氧化铜反应方程式 氧化镁和稀硝酸的反应是什么? 长安花代表的是什么意思 MA5:EMA(CLOSE,5),COLORFFFFFF;MA10:MA(CLOSE,10),COLORFFFF00;方向1:MA(CLOSE,20),COLOR00FF00,LINETHICK2;方向2:MA(CLOSE,30),COLOR4080FF,LINETHICK2;AA:=CROSS(MA5,MA10) AND 方向1>REF(方向1,1) AND 方向2>REF(方向2,1) AND方向1>方向2 AND MA10> 物理题第二题(1)(2) 2011世园会的长安花的含义? ) 一只额定电压为220伏的电热水器,当只给它通电10分钟时,电能一只额定电压为220伏的电热水器,当只给它通电10分钟时,电能表的示数增加了0.2度,求:(1)它的功率是多少千瓦?(2)它的电阻 ,1-2物理题 石榴花作为西安市花,有什么代表意义 水在4°以下时热缩冷张的例子 水在0至4度时为什么会热缩冷胀 春风得意马蹄疾 一夜看尽长安花的意思 怎么用手打啤酒瓶盖?怎么样才能学会?很酷袄‘哈哈具体练习办法.实话实说袄 别忽悠兄弟 忽忽 金属被降温到零下200度以下时,会发生什么?硬度会变吗?会不会变得很脆? 冷的作文300字 不含冷字 天人相应和天人合一之间的关系和意义 降温到零下200度需要多少伏特电流精确点 物理 一个磁铁在超导体上面会悬空不落,如果把磁铁的磁极反过来它还会飘浮在超导体上面吗?做过这实验...物理 一个磁铁在超导体上面会悬空不落,如果把磁铁的磁极反过来它还会飘浮在超 喝冷饮时,用冰块来冷却,冰为什么冰水更好些 什么是哲学里的“天人关系”? 2题 1972年在瑞典首都人类环境会议上提出的口号是什么 叹为天人句是什么意思 物理1.2.3题
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘