您好,欢迎访问一九零五行业门户网

[PHP]将“变量”转换为”可以引入的文件“以及 异常的使用_PHP教程

槽吐吐,最近在看一本叫《代码简洁之道》的书,书中讲了如何让自己的代码变得容易读懂,受益匪浅。有兴趣的朋友可以看看。
phper很少使用异常,即时是公司里的大牛,也不见得会使用异常。更多情况下,异常仅仅被当作error code的另外一个实现体而已。我记得我在前面的博客里还说到过异常,貌似木有人支持啊。
想象一下:一个代码里出现了如下情况:
[php]
if(($retcode = fun1()) == 0){ 
    $html = hello,world; 
    if(($retcode = fun2()) == 0){ 
        if(($retcode = fun3()) == 0){ 
        }else{ 
            //出错了  
        } 
    }else{ 
    //出错了  
    } 
}else{ 
//出错了  

if(($retcode = fun1()) == 0){
 $html = hello,world;
 if(($retcode = fun2()) == 0){
  if(($retcode = fun3()) == 0){
  }else{
   //出错了
  }
 }else{
 //出错了
 }
}else{
//出错了
}
上面的代码,熟悉么?之前看discuz的源码时,有一段代码有类似的结构,这样写,代价确实很大,尤其是后面的人来读这段代码的时候。我们确实没有重构的习惯,使用异常重构,可以很好解决这个问题
[php]
try{ 
    fun1(); 
    fun2(); 
    fun3(); 
}catch(exception_func_1 $e){ 
    //错误处理  
}catch(exception_func_2 $e){ 
    //错误处理  
}catch(exception_func_3 $e){ 
    //错误处理  

array( 
        'abc' => '2345' 
    ) 
);
//输出到文件的内容是:

    return array( 
        0 => 'abc', 
        1 => array( 
            'abc' => '2345' 
        ) 
    ); 

'abc',
 1 => array(
  'abc' => '2345'
 )
);
//输出到文件的内容是:
{
 return array(
  0 => 'abc',
  1 => array(
   'abc' => '2345'
  )
 );
}
然后,下一个文件include后是:
[php]
$a = include(file.php); 
$a = include(file.php);
它就拥有了这个数据了。
具体什么场合下用到,我们将内存中的数据放到硬盘中,除了serialize外,这也是一种方便的做法,因为不需要unserialize。不好的一点是:没法对对象、句柄做操作。
我是这么写的:
[php]
$v){  
                if(is_string($k)){ 
                    $k = \{$k}\; 
                }        
                $str .= $pfx . {$k} => . $this->var2str($v, $pfx) . ,\n; 
            }        
            $str .= $pfx . ); 
        }elseif(is_int($var) || is_float($var)){ 
            $str = {$var}; 
        }elseif(is_string($var)){ 
            $str = \{$var}\; 
        }        
        return $str; 
    } 

$v){
                if(is_string($k)){
                    $k = \{$k}\;
                }      
                $str .= $pfx . {$k} => . $this->var2str($v, $pfx) . ,\n;
            }      
            $str .= $pfx . );
        }elseif(is_int($var) || is_float($var)){
            $str = {$var};
        }elseif(is_string($var)){
            $str = \{$var}\;
        }      
        return $str;
    }
}
http://www.bkjia.com/phpjc/477914.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/477914.htmltecharticle槽吐吐,最近在看一本叫《代码简洁之道》的书,书中讲了如何让自己的代码变得容易读懂,受益匪浅。有兴趣的朋友可以看看。 phper很少...
其它类似信息

推荐信息