第27セット


1.mysql_fetch_row()とmysql_fetch_array()の違いは何ですか?
mysql_fetch_array()はmysql_fetch_row()の拡張バージョン.データを数値インデックスで配列に格納するほか、フィールド名をキー名として関連インデックスとして格納することもできます.
2.GDライブラリは何をしていますか.
gdライブラリはphp処理グラフィックの拡張ライブラリであり、gdライブラリはピクチャを処理するための一連のAPIを提供し、GDライブラリを使用してピクチャを処理したり、ピクチャを生成したりすることができる.Webサイト上のGDライブラリは、通常、サムネイルを生成したり、画像に透かしを付けたり、Webサイトのデータにレポートを生成したりするために使用されます.
3.ファイル拡張子を取得する関数を書いてください
方法1
$file = basename($str);
$pos1 = strpos($file,'.');
$pos2 = strpos($file,'?');
echo substr($file,$pos1,$pos2-$pos1);

方法2
$arr = parse_url($str);
$file = $arr['path'];
$file = explode('.',$file);
echo $file[1];

4.isset()とempty()の違いを述べる
Issetは変数が定義か否かを判断する.False:nullの3つのケースEmptyは1つの変数が空かどうかを判断する.True:nullの3つのケース、falseの8つのケース
5.include require include_once require_onceの違いは何ですか?
(1)include()ファイルの実行時に毎回読み取りと評価を行う;require()ファイルは一度しか処理されない(実際にはファイル内容がrequire()文を置き換えている)(2)require()は通常PHPスクリプトプログラムの先頭に置かれているinclude()の使用はrequire()と同様で、一般的にプロセス制御の処理セグメントに置かれ、PHPフッターがinclude()文を読むときに含まれるファイルが読み込まれるようになります.プログラム実行時の流れを単純化できる(3)require()とinclude()文は言語構造であり,真の関数ではなくPHPの他の言語構造のようにできる.(4)include_once()とrequire_once()文もスクリプトの実行中に指定ファイルを含む実行し、include()require()と唯一の違いは、ファイルのコードがすでに含まれている場合、再び含まれないことである.(5)require()はファイルの失敗を含み、実行を停止し、エラー(致命的)を与える.(6)include()は、動的に含むことが多い.通常は自動的にロードされるファイルです.ロードエラーが発生しても、プログラム全体がページ宣言を実行し続け、別のページがパッケージファイルを呼び出すのに失敗し、下へ実行し続け、警告を返します.
6.printとechoの違いは何ですか.
echoはPHP文、print、print_rは関数であり、文には戻り値がなく、関数には戻り値(役に立たなくても)があり、Print()は単純なタイプの変数の値(int,stringなど)しか印刷できない.echoは1つ以上の文字列を出力する.
7.phpにはいくつかのデータ型がありますか?別れは何ですか.
8種類の整数型、浮動小数点型、文字列、ブール型、配列、オブジェクト、リソース、NULL
8.mysqlデータベースのフィールドタイプvarcharとcharの主な違いは何ですか?そのフィールドは検索効率が高いのに、なぜですか.
(1)charは固定長さで,どれだけ分配すれば,どれだけ長くなるか.(2)Varcharは可変長であり,内容がどれだけ大きいかがどれだけ大きいか,省スペースである.(3)varcharは可変であるため,データ長が変化するとサーバが余分な操作を行うため,charタイプよりも効率が低い.
9.mysqlのストレージエンジンmyisamとinnodbの違いは?
(1)MyISAM優:成熟、安定、管理しやすい;表ロックメカニズム;innoDBより速いです.欠:optimizeクリーンアップスペース;適合:読み取り需要、空間時間の節約、応答速度の速さ;(2)InnoDB優:データベースは外部キーと取引をサポートし、不足:速度はMyISAMよりやや遅い;占有スペースが大きい.適合:トランザクション、外部キー、およびより高いセキュリティの要件を使用します.マルチユーザが同時にテーブルを変更する.(3)インデックスの作成:alert table tablename add index( )
10.phpでerror_Reportingという関数は何の役に立ちますか?
error_Reporting()PHPのエラーレベルを設定し、現在のレベルに戻ります.
  
error_reporting(report_level)

 

11.電子メールのフォーマットが正しいかどうかを確認する関数を書いてください.
function checkEmail($email) {  
    $pregEmail = "/([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i";
    return preg_match($pregEmail,$email); 
}

12.MVCモードを知っていますか.3種類以上の現在流行しているphpの中のmvcフレームワークの名前を書いてください
(1)mvcすなわちモデルモデルモデル、ビューview、コントローラコントローラコントローラ;1种の模型で、1种のプログラミングの思想で、1つの応用の入力、出力、データの処理を分けて、结合(2)Aを分解します..ビュー、データ収集と処理、ユーザー要求、ビジネスプロセスを含まない、smarty実装B.モデル、データと要求を受信し、関連データ処理を完了し、データを返す、「ブラックボックス」操作、コア、phpクラスライブラリ実装C.コントローラ、タスクの実装、転送データに基づいて各種コンポーネントを呼び出してタスクを完了し、結果をビュー表示、ビジネスプロセスの実装に伝える.(3)mvcの利点:開発者にある層だけに注目させ、古い階層の代わりに新しいものを実現しやすく、依存性が低く、再利用性が低く、標準化、拡張性が高い.メンテナンスCI,YII,ThinkPHP
13.AJAXは使ったことがありますか.原理を説く
ajaxは多くの技術の集合体である.以下を含む:1.ブラウザのxmlHTTPRequestオブジェクトは、別の接続チャネルを開通し、情報を伝えることができます.2.javascript:XMLHTTPRequestオブジェクトをバックグラウンドとインタラクティブに呼び出すメディアです.3.xmlは、サーバが情報伝達に応答するためのデータフォーマットです.xmlに加えて、text、html、jsonなど、任意のテキストフォーマットを使用することもできます.はっきり言ってajaxは以上の3つの技術を統合しているだけです.
14.phpにおける伝達値と伝達参照の違いを説明してください.いつ値を伝えますか.いつ引用を伝えますか.
転送値:関数内の転送変数の変更は転送変数の値に影響しません(転送値で関数の内の変数に値を再付与します)参照:転送変数の参照、関数内の任意の操作は転送変数の操作に等しく、大型変数を転送する際の効率が高い!
15.phpプログラムにはどんな脆弱性がありますか?
コマンド注入攻撃クライアントスクリプトXSSクロス局スクリプト攻撃Sql注入攻撃クロス局要求偽造SESSION HTTP応答バーストファイルアップロードホール
16.phpとjspの相互作用をどのように実現しますか?
 SOAP,XML_RPC、Socket function、CURLはこれらを実現することができます
17.指定したディレクトリの下のすべてのサブディレクトリとサブファイルを巡る関数を書いてください.
function my_scandir($dir){
    $files = array();
    if ($handle = opendir($dir) ){
        while ( ($file = readdir($handle)) !== false ) {
            if ( $file != ".." && $file != "." ) {
                if ( is_dir($dir . "/" . $file) ) {
                    $files[$file] = scandir($dir . "/" . $file);
                }else {
                    $files[] = $file;
                }
            }
        }
        closedir($handle);
        return $files;
    }
}

18.mysqlデータベースの基本的な最適化法則は何ですか?
(1)システムサービス最適化,MySQLのkey_buffer、cache_buffer、query_Cacheなどの容量の増加(2)すべての頻繁なクエリのフィールドに適切なインデックスを追加(3)SQL文を最適化し、Ditinct、Group、Joinなどの文の操作を減少させる
19.sessionの生存時間をどのように修正しますか?
方法1:php.iniのセッションgc_maxlifetimeは9999に設定されてapacheメソッドを再起動します2:$savePath="./session_save_dir/";LifeTime=時間*秒;session_save_path($savePath); session_set_cookie_params($lifeTime); session_start(); 方法3:setcookie()and session_set_cookie_params($lifeTime);
20.phpを開く.iniのsafe_mode、どの関数に影響しますか?少なくとも6つは
system,passthru,exec,shell_exec,popen,phpinfoはSafe_modeはphpにとって非常に重要な組み込みの安全メカニズムである.デフォルトはオフです
21.サルの群れを囲んで、1,2,3,4を押して、....n一次番号.
そして1番目の値から数えて、m番目の値まで数えて、それを輪から蹴り出して、その後ろから数えて、m番目の値まで数えて、それを蹴り出して...、このように続けて、最後にサルが1匹残っていることを知るまで、そのサルは大王と呼ばれています.このプロセスをプログラミングしてシミュレーションし、m、nを入力して最後の大王番号を出力する必要があります.
function king($n,$m) {
    //          
    $monkeys = array();
    for($j=1 ;$j<$n+1 ;$j++){
           $monkeys[$j] = $j ;
        }
    $i = 0;
    while (count($monkeys)>1) {
        $i++;
        $head = array_shift($monkeys);
        if($i%$m!=0){
            array_push($monkeys,$head);
        }   
    }
    return $monkeys[0];
}
echo king(10,1);