2019.3.15 PHP面接問題準備(クールホラーゲーム)

3630 ワード

作業要件:
  • バックエンドサーバアーキテクチャの最適化、モジュールテスト
  • の完了に協力
  • thinkphp 5に詳しい.0(tp 5ドキュメント関数、PHP関数を参照)
  • Linuxに詳しい.MySQLおよびRedis関連技術(Linux mysql文の復習)
  • に詳しい
  • 高同時性、高可用性アーキテクチャについてご理解いただけます(?)

  • PHP関数編
  • 処理配列:1、グループ内の最大数と最小数を求める:max(array$values)/min(array$values);2、小さいから大きいまで配列/大きいから小さいまで配列:sort(array$arr)/rsort(array$arr);3、出桟/入桟:array_pop(array $arr);(最後の配列を削除して返します).array_push(array $arr, mixed $value1 );いくつかのものを宿屋に入れる.4、カットとマージ:array_slice(array $arr,int $star,int n u m ) ; a r r a y m e r g e ( num); array_ merge( num);arraym​erge(arr1,$arr1);(ps:array_merge使用:重複するキー名がある場合、値が上書きされます).マージ:array_merge_recursive(); (PS:重複キー名がある場合、値は上書きされない)5、クエリ配列位置:array_search(“str”, $arr); 6、クエリー配列にキーが存在するかどうか:array_key_exists(‘first’,$search_array)(booleanに戻す)7、計算配列総数:array_sum( $arr); 8、配列内の重複値の除去:array_unique( $arr); 9、配列に値があるかどうかをチェックする:in_array("", $arr); 10、 print_r()関数は、配列全体の内容および構造を印刷出力し、キーおよび要素を一定のフォーマットで表示することができる.注意print_r()関数は印刷のみに用いられるだけでなく,実際には変数に関する分かりやすい情報を印刷するために用いられる.11、var_dump()関数は、配列のデータや構造を印刷するためにも使用できます.でもvar_dump()関数機能比print_r()より強力で、複数の変数を同時に印刷し、変数のタイプ情報12、array_を与えることができるcount_values()関数は、配列内のすべての値が現れる回数を統計するために使用され、要素のキー名が元の配列の値であり、キー値が元の配列に現れる回数
  • である配列を返します.
  • 処理文字列PHP処理文字列の常用関数?(関数の「パラメータ」と「戻り値」に重点を置く)
  • 1 trim()文字列の両側の空白文字とその他の文字を削除します.②substr_replace()文字列の一部を別の文字列に置き換える.③substr_count()は、文字列にサブストリングが現れる回数を計算する.④substr()は文字列の一部を返します.⑤strtolower()文字列を小文字に変換する;⑥strtoupper()文字列を大文字に変換する;⑦strtr()変換文字列内の特定の文字;⑧strrchr()検索文字列が別の文字列に最後に現れる.⑨strstr()別の文字列における文字列の最初の出現(大文字と小文字に敏感)を検索する.strrev()反転文字列;strlen()は文字列の長さを返します.str_replace()は、文字列の一部の文字を置き換えます(大文字と小文字に敏感です).print()は1つ以上の文字列を出力します.explode()は文字列を配列に分散する.is_string()は変数が文字列であるかどうかを検出する.strip_tags()は文字列からHTMLラベルを除去します.mb_substr()は中国語と英語の関数を切り取るために使用されます
  • その他の関数1、isset()使用::bool isset(mixed var);変数が存在する場合はFALSEに戻る変数が存在し、その値がNULLである場合はFALSEにも戻る変数が存在し、値がNULLでない場合はTURE 2、
  • に戻る.
    基礎知識編
    1、0=null=false=‘0’=‘’; なぜなら、PHPでは変数はC言語の構造体で格納され、空の文字列とNULL、falseはいずれも値0で格納されているからです.
    古い面接の知識点
  • Getとpostの違い
  • Getはサーバからデータを取得し、postはサーバにデータ
  • を提出、修正する.
  • Get値はurlで表示され、postはurlでは
  • で表示されません.
  • Getの値は一般に2 KB以内である、postの値の大きさはphpである.iniにて設定
  • getセキュリティは低く、postセキュリティは高く、実行効率はPostより
  • 高い.
  • データベースクエリーの最適化:1 SQL文を最適化し、クエリー文の中でできるだけselect*を使用しないで、どのフィールドでどのフィールドを調べます;サブクエリを使用しないで、テーブル接続の代わりに使用できます.ファジイクエリを使用しないでください.②データテーブルにインデックスを作成する.③プログラムでよく使われるデータに対してキャッシュを生成する.
  • Print、echo、print_rどんな違いがありますか.①echoとprintはどちらも出力が可能ですが、違いは、echoは関数ではなく、戻り値がありません.printは関数に戻り値があるので、相対的にechoだけを出力するともっと速くなり、print_rは通常、変数に関する情報を印刷するために使用され、通常はデバッグで使用される.

  • ②printは印刷文字列
    ③ print_rは配列オブジェクトなどの複合タイプを印刷する
  • SESSIONとCOOKIEの違いは?

  • ①格納場所:セッションはサーバ、クッキーはブラウザ
    ②安全性:session安全性はクッキーより高い
    ③セッションは「セッションサービス」で、使用時にサービスを開始する必要があり、クッキーは開く必要がなく、直接使用できる
    プログラミング編
    1、フィボナッチ配列を求める(1、2、3、5、8...):
    function arrFibo($len){
     
          $arr[0] = 0;
          $arr[1] = 1;
          for($i=2;$i

    2、配列逆順(rsort、array_reverse関数は使用できません)
    $arr = array("a","b","c",1,10);
     4 $i = "";//          
     5 $j = "";//    
     6 $k = "";//          
     7 
     8 $len = count($arr);
     9 $half_len = floor($len/2);//    ,          
    10 
    11 for($i=0;$i";
    30 print_r($arr);
    31 echo "
    ";
    ソートの5つのアルゴリズム:バブルソート
    $a[$j])
    	  {
    		$temp = $a[$i];
    		$a[$i] = $a[$j];
    		$a[$j] = $temp;
    	   }
    	}
    	}
    	return $a;
    }
    print_r(maopao($arr));
    ?>