phpプロジェクト開発で出会った囧事集錦.
1307 ワード
1)、phpの一重引用符と二重引用符の違い:
出力結果:出力データ
$pint
説明単一引用符(')は、そのまま出力されることを表します.すなわち、変数名、または他のテキストは変更せずにクライアントに送信されます.
二重引用符("")変数名は変数値に置き換えられ、中のフィールドはコンパイラによって解釈され、HTMLコードとして出力されます.
2)、擬似静的開発を行うにはbbs.html?page=12
bbs-1-12になる.htmlの書き方.
phpのsprintf()メソッドを使用して、パラメータの場合はfun(「bbs-%s.html」)
----->処理
function getURL($url,$pg)
{
return sprintf($url,$pg);(%sを対応するページ番号に変更)
}
.................
3、else ifとswitchの違い、else ifとswitch効率の対比
switchはif-elseと比較する、Binary Treeアルゴリズムを使用しているため、if-elseの最初の条件がtrueでない限り、switchはほとんど速くなる.原理:switch...caseは、実際のcaseブランチのアドレスを示すジャンプテーブルを生成します.このジャンプテーブルのインデックス番号は、switch変数の値と等しいです.だから、switch...caseはifのように...elseのように条件ブランチをヒット条件まで遍歴し、対応するインデックス番号のテーブル項目にアクセスしてブランチを位置決めする目的を達成するだけです.switchでは、switch(式)整数または整数に変換できる値(byte、short、char、intタイプ)と列挙タイプを使用します.longタイプは使用できません.caseの後ろには定数または定数しかなく、変数ではありません.実行中にbreak文に遭遇した場合、switch文が飛び出します.ブランチが少ないときはif-esleを使い、ブランチが多いときはswitchがはっきりします.ボスを使うと、判断条件が3つを超え、変数ではなく、switchを使う効率はelse ifよりはるかに高い.
$pint=" ";
echo "<b>$pint</b><br/>";
echo '<b>$pint</b><br/>';
出力結果:出力データ
$pint
説明単一引用符(')は、そのまま出力されることを表します.すなわち、変数名、または他のテキストは変更せずにクライアントに送信されます.
二重引用符("")変数名は変数値に置き換えられ、中のフィールドはコンパイラによって解釈され、HTMLコードとして出力されます.
2)、擬似静的開発を行うにはbbs.html?page=12
bbs-1-12になる.htmlの書き方.
phpのsprintf()メソッドを使用して、パラメータの場合はfun(「bbs-%s.html」)
----->処理
function getURL($url,$pg)
{
return sprintf($url,$pg);(%sを対応するページ番号に変更)
}
.................
3、else ifとswitchの違い、else ifとswitch効率の対比
switchはif-elseと比較する、Binary Treeアルゴリズムを使用しているため、if-elseの最初の条件がtrueでない限り、switchはほとんど速くなる.原理:switch...caseは、実際のcaseブランチのアドレスを示すジャンプテーブルを生成します.このジャンプテーブルのインデックス番号は、switch変数の値と等しいです.だから、switch...caseはifのように...elseのように条件ブランチをヒット条件まで遍歴し、対応するインデックス番号のテーブル項目にアクセスしてブランチを位置決めする目的を達成するだけです.switchでは、switch(式)整数または整数に変換できる値(byte、short、char、intタイプ)と列挙タイプを使用します.longタイプは使用できません.caseの後ろには定数または定数しかなく、変数ではありません.実行中にbreak文に遭遇した場合、switch文が飛び出します.ブランチが少ないときはif-esleを使い、ブランチが多いときはswitchがはっきりします.ボスを使うと、判断条件が3つを超え、変数ではなく、switchを使う効率はelse ifよりはるかに高い.