仓酷云
标题:
PHP编程:PHP开辟网站经常使用的21种功效的代码汇总
[打印本页]
作者:
变相怪杰
时间:
2015-2-3 23:43
标题:
PHP编程:PHP开辟网站经常使用的21种功效的代码汇总
现在,也有了从事软件工程的想法,在经过了一个月的PHP培训学习之后,发现其实软件工程并没有想像中的那么难。 </p> PHP 是今朝利用最普遍的基于 Web 的编程言语,驱动着数以百万计的网站,个中也包含如 Facebook 等一些大型站点。这里搜集了 21 段适用便捷的 PHP 代码摘录,对每品种型的 PHP 开辟者城市有所匡助。
1. 可浏览随机字符串
此代码将创立一个可浏览的字符串,使其更接近辞书中的单词,适用且具有暗码验证功效。
/**************
*@length - length of random string (must be a multiple of 2)
**************/
function readable_random_string($length = 6){
$conso=array("b","c","d","f","g","h","j","k","l",
"m","n","p","r","s","t","v","w","x","y","z");
$vocal=array("a","e","i","o","u");
$password="";
srand ((double)microtime()*1000000);
$max = $length/2;
for($i=1; $i<=$max; $i++)
{
$password.=$conso[rand(0,19)];
$password.=$vocal[rand(0,4)];
}
return $password;
}
2. 生成一个随机字符串
假如不需求可浏览的字符串,利用此函数替换,便可创立一个随机字符串,作为用户的随秘密码等。
/*************
*@l - length of random string
*/
function generate_rand($l){
$c= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
srand((double)microtime()*1000000);
for($i=0; $i<$l; $i++) {
$rand.= $c[rand()%strlen($c)];
}
return $rand;
}
3. 编码电子邮件地址
利用此代码,可以将任何电子邮件地址编码为 HTML 字符实体,以避免被渣滓邮件法式搜集。
function encode_email($email='info@domain.com', $linkText='Contact Us', $attrs ='class="emailencoder"' )
{
// remplazar aroba y puntos
$email = str_replace('@', '@', $email);
$email = str_replace('.', '.', $email);
$email = str_split($email, 5);
$linkText = str_replace('@', '@', $linkText);
$linkText = str_replace('.', '.', $linkText);
$linkText = str_split($linkText, 5);
$part1 = '<a href="ma';
$part2 = 'ilto:';
$part3 = '" '. $attrs .' >';
$part4 = '</a>';
$encoded = '<script type="text/javascript">';
$encoded .= "document.write('$part1');";
$encoded .= "document.write('$part2');";
foreach($email as $e)
{
$encoded .= "document.write('$e');";
}
$encoded .= "document.write('$part3');";
foreach($linkText as $l)
{
$encoded .= "document.write('$l');";
}
$encoded .= "document.write('$part4');";
$encoded .= '</script>';
return $encoded;
}
4. 验证邮件地址
电子邮件验证或许是中最经常使用的网页表单验证,此代码除验证电子邮件地址,也能够选择反省邮件域所属 DNS 中的 MX 纪录,使邮件验证功效加倍壮大。
function is_valid_email($email, $test_mx = false)
{
if(eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email))
if($test_mx)
{
list($username, $domain) = split("@", $email);
return getmxrr($domain, $mxrecords);
}
else
return true;
else
return false;
}
5. 列出目次内容
function list_files($dir)
{
if(is_dir($dir))
{
if($handle = opendir($dir))
{
while(($file = readdir($handle)) !== false)
{
if($file != "." && $file != ".." && $file != "Thumbs.db")
{
echo '<a target="_blank" href="'.$dir.$file.'">'.$file.'</a><br>'."\n";
}
}
closedir($handle);
}
}
}
6. 烧毁目次
删除一个目次,包含它的内容。
/*****
*@dir - Directory to destroy
*@virtual[optional]- whether a virtual directory
*/
function destroyDir($dir, $virtual = false)
{
$ds = DIRECTORY_SEPARATOR;
$dir = $virtual ? realpath($dir) : $dir;
$dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir;
if (is_dir($dir) && $handle = opendir($dir))
{
while ($file = readdir($handle))
{
if ($file == '.' $file == '..')
{
continue;
}
elseif (is_dir($dir.$ds.$file))
{
destroyDir($dir.$ds.$file);
}
else
{
unlink($dir.$ds.$file);
}
}
closedir($handle);
rmdir($dir);
return true;
}
else
{
return false;
}
}
7. 解析 JSON 数据
与大多半盛行的 Web 办事如 Twitter 经由过程开放 API 来供应数据一样,它老是可以晓得若何解析 API 数据的各类传送格局,包含 JSON,XML 等等。
$json_string='{"id":1,"name":"foo","email":"foo@foobar.com","interest":["wordpress","php"]} ';
$obj=json_decode($json_string);
echo $obj->name; //prints foo
echo $obj->interest[1]; //prints php
<p>应该大致熟悉了一些学习过程,也许我的过程和你的有些出路,但是不管怎么样是殊途同归,我写这么多,也只是给大家一个借鉴的机会,至于好与不好,默默不敢打包票^0^
作者:
第二个灵魂
时间:
2015-2-4 06:15
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
作者:
活着的死人
时间:
2015-2-6 20:34
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
作者:
乐观
时间:
2015-2-11 02:58
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
作者:
再见西城
时间:
2015-2-24 19:55
基础有没有对学习php没有太大区别,关键是兴趣。
作者:
爱飞
时间:
2015-3-6 21:40
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者:
愤怒的大鸟
时间:
2015-3-13 09:08
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者:
分手快乐
时间:
2015-3-20 17:43
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者:
兰色精灵
时间:
2015-3-25 02:36
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
作者:
再现理想
时间:
2015-4-4 08:07
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者:
金色的骷髅
时间:
2015-4-9 09:42
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
作者:
柔情似水
时间:
2015-4-14 14:55
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者:
变相怪杰
时间:
2015-4-15 11:26
做为1门年轻的语言,php一直很努力。
作者:
仓酷云
时间:
2015-4-18 00:20
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者:
若天明
时间:
2015-4-19 12:50
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
作者:
小女巫
时间:
2015-4-26 10:10
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
作者:
精灵巫婆
时间:
2015-6-15 20:50
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
作者:
灵魂腐蚀
时间:
2015-6-26 21:29
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年 具体的记不清啦,囧。
作者:
飘灵儿
时间:
2015-7-8 08:17
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者:
山那边是海
时间:
2015-7-11 18:52
兴趣是最好的老师,百度是最好的词典。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2