PHP一些基础用法

 

1.         单引号和双引号

在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\\和插入单引号\')。所以,当你想在字串中进行变量代换和包含\n(换行符)等转义序列时,你应该使用双引号。但单引号的解析速度更快。

2.         PHP中可以使用变量值创建对象

 

$Class = 'Person'; $obj = new $Class; //等价于$obj = new Person;

3.         遍历数组两种方法

$arr  = array( "one" ,  "two" ,  "three" );
reset ( $arr );
while (list( $key ,  $value ) =  each ( $arr )) {
    echo  "Key:  $key ; Value:  $value <br />\n" ;
}

foreach ( $arr  as  $key  =>  $value ) {
    echo  "Key:  $key ; Value:  $value <br />\n" ;
}

 

4.         set_magic_quotes_runtime()get_magic_quotes_runtime() 是针对数据库
       get_magic_quotes_gpc()
是针对GPC, Get/Post/Cookie

默认情况下,PHP 指令 magic_quotes_gpc on,它主要是对所有的 GETPOST COOKIE 数据自动运行 addslashes()

set_magic_quotes_runtime(1);
ini_set(magic_quotes_runtime,1);//
这行和上行效果一样
magic_quotes_gpc()
只能手动到服务器配置文件中改

 

5.         php在函数前的@符号是用来抑制错误的

 

6.         日期函数

time()取得当前的时间戳(GMT),当前时间戳世界各地都是一样的,time()与时区的设置无关

date(string $format, int $timestamp)与时区的设置有关,按照当前时区设置显示格式化时间串

gmdate(string $format, int $timestamp)总是按照GMT返回GMT当前的时间

 

 7.   Cannot modify header information – headers already sent by  的解决办法

       A.程序的最上方加入函数 ob_start();
       B.   修改php.ini中的session.auto_start = 0 为 session.auto_start = 1 
             output_buffering =改为on或者任何数字。

 8.   dirname('/')=dirname('/index.php')=\;
       dirname('/a/index.php')=/a;  
       basename('/')='';basename('/a/')=basename('/a')='a';

9.   页面空白

 

1.执行过程中使用了 exit();
2.出现了错误,但是被error_reporting();所屏蔽
3.包含文件中有同名函数!

 10.addslashes函数

 

' " \ NUL   
   
Try this instead:   
   
<?php   
$txt = '-'.chr(0).'-';   
var_dump($txt, addslashes($txt));   
?>   
   
Output is:   
string(3) "--"   
string(4) "-\0-"   
   
NUL is something you don't see. :) 

 

11. array_merge和+

      两个数组用+连接,后面添加到前面(如果后面是相同的key,那就不添加)

     

array(1,'b'=>2) + array(3,'b'=>4) = array(1,'b'=>2);
 

   array_merge(arr1,arr2,arr3,...)

   数字key,重新排序,字符串key,后面覆盖前面的值

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值