仓酷云

标题: PHP网站制作之九个PHP很有效的功效 [打印本页]

作者: 不帅    时间: 2015-2-3 23:37
标题: PHP网站制作之九个PHP很有效的功效
看到好的帖子最好up一下,以使得更多的人得到分享。     1. 函数的恣意数量的参数
  你能够晓得PHP答应你界说一个默许参数的函数。但你能够其实不晓得PHP还答应你界说一个完整恣意的参数的函数
  上面是一个示例向你展现了默许参数的函数:
    // 两个默许参数的函数
  function foo($arg1 = '', $arg2 = '') {
  echo "arg1: $arg1\n";
  echo "arg2: $arg2\n";
  }
  foo('hello','world');
  /* 输入:
  arg1: hello
  arg2: world
  */
  foo();
  /* 输入:
  arg1:
  arg2:
  */

  如今咱们来看一看一个不定参数的函数,其利用到了?func_get_args()办法:
    // 是的,形参列表为空
  function foo() {
  // 获得一切的传入参数的数组
  $args = func_get_args();
  foreach ($args as $k => $v) {
  echo "arg".($k+1).": $v\n";
  }
  }
  foo();
  /* 甚么也不会输入 */
  foo('hello');
  /* 输入
  arg1: hello
  */
  foo('hello', 'world', 'again');
  /* 输入
  arg1: hello
  arg2: world
  arg3: again
  */

  2. 利用 Glob() 查找文件
  良多PHP的函数都有一个对照长的自注释的函数名,然而,当你看到?glob() 的时分,你能够其实不晓得这个函数是用来干甚么的,除非你对它已很熟习了。
  你可以以为这个函数就好?scandir() 一样,其可以用来查找文件。
    // 获得一切的后缀为PHP的文件
  $files = glob('*.php');
  print_r($files);
  /* 输入:
  Array
  (
  [0] => phptest.php
  [1] => pi.php
  [2] => post_output.php
  [3] => test.php
  )
  */

  你还可以查找多种后缀名
    // 取PHP文件和TXT文件
  $files = glob('*.{php,txt}', GLOB_BRACE);
  print_r($files);
  /* 输入:
  Array
  (
  [0] => phptest.php
  [1] => pi.php
  [2] => post_output.php
  [3] => test.php
  [4] => log.txt
  [5] => test.txt
  )
  */
  你还可以加上途径:
  $files = glob('../images/a*.jpg');
  print_r($files);
  /* 输入:
  Array
  (
  [0] => ../images/apple.jpg
  [1] => ../images/art.jpg
  )
  */

  假如你想失掉相对途径,你可以挪用?realpath() 函数:
    $files = glob('../images/a*.jpg');
  // applies the function to each array element
  $files = array_map('realpath',$files);
  print_r($files);
  /* output looks like:
  Array
  (
  [0] => C:\wamp\www\images\apple.jpg
  [1] => C:\wamp\www\images\art.jpg
  )
  */

  3. 内存利用信息
  察看你法式的内存利用可以让你更好的优化你的代码。
  PHP 是有渣滓收受接管机制的,并且有一套很庞杂的内存办理机制。你可以晓得你的剧本所利用的内存情形。要晓得以后内存利用情形,你可使用?memory_get_usage() 函数,假如你想晓得利用内存的峰值,你可以挪用memory_get_peak_usage() 函数。
    echo "Initial: ".memory_get_usage()." bytes \n";
  /* 输入
  Initial: 361400 bytes
  */
  // 利用内存
  for ($i = 0; $i < 100000; $i++) {
  $array []= md5($i);
  }
  // 删除一半的内存
  for ($i = 0; $i < 100000; $i++) {
  unset($array[$i]);
  }
  echo "Final: ".memory_get_usage()." bytes \n";
  /* prints
  Final: 885912 bytes
  */
  echo "Peak: ".memory_get_peak_usage()." bytes \n";
  /* 输入峰值
  Peak: 13687072 bytes
  */

  4. CPU利用信息
  利用?getrusage() 函数可让你晓得CPU的利用情形。注重,这个功效在Windows下不成用。
    print_r(getrusage());
  /* 输入
  Array
  (
  [ru_oublock] => 0
  [ru_inblock] => 0
  [ru_msgsnd] => 2
  [ru_msgrcv] => 3
  [ru_maxrss] => 12692
  [ru_ixrss] => 764
  [ru_idrss] => 3864
  [ru_minflt] => 94
  [ru_majflt] => 0
  [ru_nsignals] => 1
  [ru_nvcsw] => 67
  [ru_nivcsw] => 4
  [ru_nswap] => 0
  [ru_utime.tv_usec] => 0
  [ru_utime.tv_sec] => 0
  [ru_stime.tv_usec] => 6269
  [ru_stime.tv_sec] => 0
  )
  */

  这个布局看上出很流畅,除非你对CPU很懂得。上面一些注释:
    ru_oublock: 块输入操作
  ru_inblock: 块输出操作
  ru_msgsnd: 发送的message
  ru_msgrcv: 收到的message
  ru_maxrss: 最大驻留集巨细
  ru_ixrss: 全体同享内存巨细
  ru_idrss:全体非同享内存巨细
  ru_minflt: 页收受接管
  ru_majflt: 页生效
  ru_nsignals: 收到的旌旗灯号
  ru_nvcsw: 自动高低文切换
  ru_nivcsw: 主动高低文切换
  ru_nswap: 互换区
  ru_utime.tv_usec: 用户态工夫 (microseconds)
  ru_utime.tv_sec: 用户态工夫(seconds)
  ru_stime.tv_usec: 体系内核工夫 (microseconds)
  ru_stime.tv_sec: 体系内核工夫?(seconds)

<p> <P style="TEXT-INDENT: 2em">
学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后...
作者: 精灵巫婆    时间: 2015-2-4 03:48
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 飘灵儿    时间: 2015-2-6 15:04
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者: 乐观    时间: 2015-3-2 01:30
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
作者: 不帅    时间: 2015-3-6 17:19
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
作者: 第二个灵魂    时间: 2015-3-7 00:57
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
作者: 若相依    时间: 2015-3-10 18:00
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 简单生活    时间: 2015-3-14 12:24
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
作者: 只想知道    时间: 2015-3-20 13:58
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: 冷月葬花魂    时间: 2015-3-23 12:06
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者: 小女巫    时间: 2015-3-24 08:40
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
作者: 分手快乐    时间: 2015-4-1 11:09
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者: 变相怪杰    时间: 2015-4-17 20:14
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 愤怒的大鸟    时间: 2015-4-22 02:07
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
作者: 若天明    时间: 2015-4-23 10:36
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
作者: 深爱那片海    时间: 2015-4-25 18:40
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者: 飘飘悠悠    时间: 2015-5-7 23:07
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
作者: 山那边是海    时间: 2015-6-5 22:06
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
作者: 仓酷云    时间: 2015-6-7 09:33
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
作者: 因胸联盟    时间: 2015-7-2 10:55
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2