ホームページ >バックエンド開発 >PHPチュートリアル >【PHP】「変数」を「インポートできるファイル」に変換する方法と間違った使い方
【PHP】「変数」を「インポートできるファイル」に変換する方法と例外の使い方
最近「コードを簡潔にする方法」という本を読みました。作り方 自分のコードが読みやすくなり、大きな恩恵を受けています。興味のあるお友達は覗いてみてはいかがでしょうか。
PHPer は例外をほとんど使用しません。たとえ会社の偉い人であっても、例外を使用しないかもしれません。多くの場合、例外は単にエラー コードの別の実装として扱われます。前回のブログで異常について触れたのを覚えていますが、誰もそれを支持しなかったようです。
想像してください: コード内で次の状況が発生します:
<?php if(($retCode = fun1()) == 0){ $html = "Hello,world"; if(($retCode = fun2()) == 0){ if(($retCode = fun3()) == 0){ }else{ //出错了 } }else{ //出错了 } }else{ //出错了 }
<?php try{ fun1(); fun2(); fun3(); }catch(Exception_FUNC_1 $e){ //错误处理 }catch(Exception_FUNC_2 $e){ //错误处理 }catch(Exception_FUNC_3 $e){ //错误处理 }
<?php try{ fun1(); fun2(); fun3(); }catch(Exception $e){ echo $e->getMessage(); } function fun1(){ throw new Exception("Your input is empty", 10001); }
1. 何か問題が発生した場合の心配をせずに、通常のプロセスに集中できます
2. 統一された方法でエラーを処理し、エラー、ログ、トレースバックを返します
3. エラー タイプを自由に追加できます。カスタマイズされているため、一連のエラー コードを維持する必要はありません
4. コード構造が明確であり、メンテナンスコストが低い
5. 独自のクラス (smarty や phpunit など) は独自の記録メソッドを持ち、それらが存在するシステムとは結合されません。
個人的な習慣にもよりますが、個人的には強くお勧めします
変数 (配列、文字列、数値など) をファイルに出力して、このファイルが他の php ファイルにインクルードされた後にこの変数を使用できるようにしたいと考えています。
<?php $a = array( 0 => 'abc', 1 => array( 'abc' => '2345' ) ); //输出到文件的内容是: { return array( 0 => 'abc', 1 => array( 'abc' => '2345' ) ); }次に、インクルード後の次のファイルは次のとおりです:
$a = include("file.php");すでにこのデータがあります。
これは私が書いたものです:
<?php class Code { /** * 将变量转化为字符串 * * @param mixed $var 仅包含字符串、数字、数组的变量 * @param string $pfx 前缀,输出的内容容易被读 * * @return string */ public function var2Str($var, $pfx = ''){ $str = ''; if(is_array($var)){ $str = "array(\n"; $pfx .= "\t"; foreach($var as $k => $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; } }試してみてください~