1
2
3
4
5
 
         | 
        
          <?php
 if ($a = 100 && $b = 200) {                  
var_dump($a, $b); 
} 
?>
         | 
      
    
  
  先赋值,再进行与运算
  此问题鸟哥有一篇文章有谈到过,猛击http://www.laruence.com/2010/07/26/1668.html
  4、如果比较一个整数和字符串,则字符串会被转换为整数。
  如果比较两个数字字符串,则作为整数比较。此规则也适用于 switch 语句。
  5、执行运算符
  PHP 支持一个执行运算符:反引号(“)。注意这不是单引号!PHP 将尝试将反引号中的内容作为外壳命令来执行,并将其输出信息返回(例如,可以赋给一个变量而不是简单地丢弃到标准输出)。使用反引号运算符“`”的效果与函数 shell_exec() 相同。
  
    
      
        
          1
2
3
4
 
         | 
        
          <?php
$output = `ls -al`;                                           
echo $output;
?> 
         | 
      
    
  
  注: 反引号运算符在激活了安全模式或者关闭了 shell_exec() 时是无效的。
  6、递增/递减运算符不影响布尔值。递减 NULL 值也没有效果,但是递增 NULL 的结果是 1。
  
    
      
        
          1
2
3
4
5
6
 
         | 
        
          $b = TRUE;
echo --$b;                                                                          
echo ++$b;
$c = NULL;
echo --$c;
echo ++$c; 
         | 
      
    
  
  输出在个1和一个空值
  7、+ 运算符把右边的数组附加到左边的数组后面,但是重复的键值不会被覆盖。
  
    
      
        
          1
2
3
4
 
         | 
        
          $array1 = array(1, 'key' => 2);
$array2 = array('key' => 3, 'key1' => 4);                                 
$array = $array1 + $array2;
var_dump($array);
         | 
      
    
  
  输出array(3) { [0]=> int(1) ["key"]=> int(2) ["key1"]=> int(4) }
  数组2中的3已经不存在了,数组1中的2没有被覆盖
  8、使用括号可以增强代码的可读性。
  9、除号(“/”)总是返回浮点数,除非这两个运算数是整数(或由字符串转换成的整数)
  这里手册中有一点没有说明,返回的值必须是整数才行,否则如 6/4的结果就是float了
  //此处在某个中文手册中有翻译错误,意思完全弄反了,纠结…
  代码示例:
  
    
      
        
          1
2
3
4
5
6
7
8
9
 
         | 
        
          $a = 8;
$b = 4;
$c = $a / $b;
var_dump($c);                                                                     
 
$a = 6;
$b = 4;
$c = $a / $b;
var_dump($c); 
         | 
      
    
  
  10、空字符串,false,NULL等值在算术运算符中将会以0对待。
  如下所示代码:
  
    
      
        
          1
2
3
 
         | 
        
          echo 5 * "", '<br>';                                                                
echo 5 + false, '<br>';
echo 5 / NULL, '<br>'; 
         | 
      
    
  
  11、 加号、减号、点号运行的优先级是一样一样滴
  如下所示代码:
  
    
      
        
          1
2
 
         | 
        
          $var = 3;
echo "string " . $var + 3; 
         | 
      
    
  
  输出3
  12、instanceof后面不能接字符串,可以直接接类名或包含类名的变量
  
    
      
        
          1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
         | 
        
          class Demo {                                                                     
 
}
 
$demo = new Demo();
 
/* 以变量的形式存储类名字符串是正确的 */
$class = "Demo";
if ($demo instanceof $class) {
    echo 'yes';
}
 
/* 不能直接接类名的字符串,即类名不能加双引号 */
$demo = new Demo();
 
if ($demo instanceof "Demo") {
    echo 'yes';
}
 
/* 类名上无引号 */
$demo = new Demo();
 
if ($demo instanceof Demo) {
    echo 'yes';
}
         | 
      
    
  
   
  
  
    
  
  
  
    
    
		       
        火柴人英雄塔防内置菜单
        策略塔防 下载  
		       
        车辆大师无限金币内置菜单
        赛车竞速 下载  
		       
        狂冲之路免内购版
        赛车竞速 下载