您所在的位置:首页>>编程技术

PHP经验技巧知识

点击数:1744 更新时间:2014-04-06 15:20:00 来源: 厦门网站建设-返回

一、关于基础的打印和输出变量
 
1、echo 和 print 函数
 都是用于输出 字符串 和 变量.
区别在于 - print 可以返回 true 或 flase
 
2、printf 和 sprintf 函数
 都是用于格式化输出 字符串或变量.
 如: print("%d只紧急派发","41");
 "%ld" - 表示十进制长整形  "%s" = 表示按字符串输出 "%f" 表示按浮点数输出.
 区别 - sprintf函数可以在转换后将结果保持在字符串变量中,而不直接输出.
 
 3、print_r() 和 var_dump() 函数
 打印数组
 ------------------------------

?

1

2

3

$ab=array(dd,cc);

print_r($ab);

var_dump($ab);


4、HereDoc 函数
用于嵌入一些大些文本内容.

?

1

2

3

4

5

<?php

   echo <<< THIS_HEREDOC   // - 开始

        FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

    THIS_HEREDOC // - 结束

?>


5、isset() 函数检查定变量定义
用于检查 变量或对象是否已经定义. 然后返回布尔值.
 
如   if(isset($POST['user'])){     // 检测变量
     }
     
     if(isset($obj->property)){    // 检测对象
     }
     
6、unset() 删除变量
  顾名思义 .. 废除变量
   unset($ab);
   
 7、empty() 检测变量是不是空值
  $ab = empty($a);
  是空值 $ab 返回 NULL
  
二、包含控制语句
 
1、include 和 require
 把另一个文件包含 到当前文件.
 调用方式:

?

1

2

3

4

<?php

include "aaa.php"

require "bbb.php"

?>


 2、include_once 和 require_once
 功能与上面没什么区别,主要是用于
 比如可能会重复调用某文件时 include 和 require
 或有错误提示,include_once 和 require_once不会.
 
 3、eval() 动态执行PHP代码
  使PHP字符串变成可执行的PHP语句.
  使用方式:

?

1

2

3

4

5

<?php

   $str = '$var = 5';

   eval($str);

   echo $var;

?>


  var 就从字符串变成了 可执行的PHP变量.

三、函数相关

1、函数与全局变量

?

1

2

3

4

5

6

7

8

<?php

  function func(){

    $var = 2; 

  }

  $var = 1;

  func();

  echo $var;

?>


 函数外部,我们将$var变量的值置为1,当函数fun被调用时,fun内部
 将var变量的值置为2,但是函数中的$var属于局部变量不会受到影响,
 因此脚本执行为1。

?

1

2

3

4

5

6

7

8

9

<?php

  function func(){

   $GLOBALS["var"] = 2;   // 或使用global $var

   $var = 2;

  }

  $var = 1;

  func();

  print $var;

?>


$var 值修改成2,因为$var已经声明为全局变量,当有一处对$var的值
做了修改时,别的地方引用该变量时也会随之同步改变.

2、函数的静态变量
 
函数中声明静态变量,局部变量前面加上static关键字即可
static $variable;
具体脚本如函数定义:

?

1

2

3

4

5

6

7

8

9

10

11

12

<?php

    function static_ex($num){

      $a = 10;

      static $b = 10;

      echo $num . "<br />";

      echo $a++ . "<br />";

      echo $b++ . "<br />";

    }

   static_ex(1);

   static_ex(2);

   static_ex(3);

?>


 执行三次,static_ex()函数.
 1,10,10,2,10,11,3,10,12
 其中,可以看到 b 是固定不变.
 
3、递归函数
 
php5 中递归支持 6000个调用,根据情况来定

?

1

2

3

4

5

6

7

8

9

<?

  function summation($count){

     if($count != 0){

       return $count + summation($count-1); //  递归调用本身

     }

    $sum = summation(10);

    echo "求和 = $sum";

  }

?>


不要过多使用递归,以免引起不必要的麻烦。
 
4、自动转义字符串数据
 
addslashes(string)
 
字符串里面部分字符添加反斜线转义字符,addslashes()函数只为4个字符添加转义,包括
单引号"'",双引号""",反斜杆"\"和NULL("\0")。
可以将sql语句中可能与SQL冲突字符串进行转义过滤一些错误、恶意注入操作的等.
 
addcs

【责任编辑:CSW8923
展开