答え: get は HTTP プロトコル経由で送信され、url パラメーター経由で受信されるリクエストですが、post はエンティティ データであり、セッションはフォームを通じて大量の情報を送信します。
との違いは? (1) セッションはサーバーに保存され、クライアントは情報を取得できません。そしてサーバーは情報を取得できます。
(2) セッションはパスを区別できません。同じユーザーが Web サイトにアクセスしている間、すべてのセッションにどこからでもアクセスできます。 Cookie にパス パラメータが設定されている場合、同じ Web サイト上の異なるパスにある Cookie は相互にアクセスできません。(3)。セッションが正しく動作するには Cookie が必要です。クライアントが Cookie を完全に無効にし、URL を通じて値を渡さない場合、セッションは無効になります。
(4) Cookie はあまり安全ではありません。ローカルに保存された COOKIE を他人が解析して COOKIE を偽装する可能性があります。
セキュリティを考慮すると、セッションを使用する必要があります。
答え: トランザクションは、順序付けられたデータベース操作のセットです。グループ内のすべての操作が成功した場合、トランザクションは成功したとみなされます。1 つの操作だけが失敗した場合でも、トランザクションは成功とは言えません。すべての操作が完了すると、トランザクションはコミットされ、その変更は他のすべてのデータベース プロセスに適用されます。操作が失敗した場合、トランザクションはロールバックされ、トランザクション内のすべての操作の効果はキャンセルされます。
Answer: echo date('Y-m-d H:i:) の形式で出力します。 s', strtotime(' -1 day'));
答え: echo は PHP ステートメントです。 print と print_r は関数であり、ステートメントは値を返しません。関数は戻り値を持つことができます (役に立たない場合でも)
print() は単純型変数の値のみを出力できます ( int、string など)
print_r() は複合型を出力できます 変数の値 (配列、オブジェクトなど)
echo 1 つ以上の文字列を出力します
回答: Smarty 、Dwoo、TinyButStrong、Template Lite、Savant、phemplate、文字列反転の実装方法?
8. MYSQL データベースを最適化する方法。
2 に設定するには、サブクエリの代わりに接続 (JOIN) を使用します:
の代わりにユニオン (UNION) を使用します。処理:
5. テーブルをロックし、トランザクション処理を最適化します:
6. 外部キーを使用してロック テーブルを最適化します:
8. クエリ ステートメントを最適化します
9. 現在時刻を取得する MYSQL の関数は何ですか?、日付をフォーマットする関数は
です。 答え: now(), date( )
10. 中国語の文字列を文字化けせずにインターセプトする方法。
mb_substr()
session_set_cookie_params($lifeTime);
: 方法 1 (PHP5 以降):
$readcontents = fopen("http://www.scutephp.com/index.html", "rb"); = stream_get_contents($ readcontents);
fclose($readcontents);
方法 2:
echo file_get_contents("http://www.scutephp. com/index.html");
14. MVC についての理解について話してください
答え:
参照渡し : 関数のスコープ内で値を変更すると、関数の外側でもこれらの変更が反映されます。
長所と短所: 値渡しの場合、PHP は値をコピーする必要があります。特に大きな文字列やオブジェクトの場合、これはコストのかかる操作になる可能性があります。
参照渡しでは値をコピーする必要がないため、パフォーマンスの向上に非常に役立ちます。
17. PHP の error_reporting の関数は何ですか?
答え: エラー レベルとエラー メッセージを報告する関数を作成してください。
答え: 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); }
答え: $script_name = basename(__file__); print_r($script_name);
答え: ポップアップダイアログボックス:alert()、prompt()、confirm() 入力フォーカスの取得 focus()
答え: window.location.href, 🎜>23. foo() と @foo() の違いは何ですか?
24. 「myclass」という名前のクラスを宣言する方法
25. 「myclass」という名前のオブジェクトをインスタンス化する方法?
26. クラスの属性にアクセスして設定するにはどうすればよいですか?
27. mysql_fetch_row() と mysql_fetch_array の違いは何ですか?
28. GD ライブラリは何に使用されますか?
Web サイトでは、通常、GD ライブラリはサムネイルの生成や画像への透かしの追加、Web サイト データに関するレポートの生成に使用されます。
答え: int は数値型で、char は数値型です。固定長文字列、varchar 実際の長さの文字列、日時日時型、テキスト文字列 charのフィールドは作成したテーブルで設定された長さに固定され、varcharは可変長文字です
39. 変数が設定されているかどうかを検出する関数はありますか? 空かどうかを判断する関数は次のとおりです。
答え: mysql_num_rows($result);
46. php5 のコンストラクターとデストラクターをメモしてください 答え: __construct 、 __destruct
id 記事 ID タイトル 記事タイトル コンテンツ 記事コンテンツ category_id 記事カテゴリ ID ヒット数 クリック数 答え: CREATE TABLE 'message'( 'id' int(10) NOT NULL auto_increment、'title' varchar(200) デフォルト NULL、'content' text、'category_id' int(10) NOT NULL、'hits' int(20)、PRIMARY KEY('id') )ENGINE=InnoDB DEFAULT; CHARSET=utf8;
Answer 1:end(explode(',',basename($url)));
2. を取り出す必要があります。 ?php echo 8%(-2) ?>__0__ が出力されます。
PEAR のデータベース接続文字列の形式は ____ です。
$dsn = "mysql://root:123@192.168.0.1/testdb";
6. Web ページ上のすべての JS/VBS スクリプトをフィルタリングするための正規表現を記述します (つまり、script タグとそのコンテンツを削除します):
preg_replace("//si", "newinfo", $script);
7. ファイル http.conf で、最初にステートメント ____ を使用して PHP モジュールを動的にロードし、次にステートメント ____ を使用して php という名前の Apache ファイルを作成します。 PHP スクリプトとして処理されます。
LoadModule php5_module "c:/php/php5apache2.dll" 、
AddType application/x-httpd-php .php、
3. SQL インジェクションの脆弱性を防ぐには、どの機能が使えるの?
addslashes()
mysql_escape_string()
4. PHP を使用して、クライアント IP とサーバー IP を表示するコードを記述します
echo $_SERVER[ ' REMOTE_ADDR'];
echo $_SERVER['SERVER_ADDR'];
<p>function dir_recurse($dir) </p><p>{</p><p> $i = 1;</p><p> if($handle = opendir($dir)) {</p><p> while(false !== ($file = readdir($handle))) {</p><p> if($file != "." && $file != ".." ) {</p><p> if(is_dir($dir."/".$file) == true) {</p><p> $fullpath = $dir."/".$file;</p><p> dir_recurse($fullpath);</p><p> echo "$fullpathn";</p><p> $i++;</p><p> }else {</p><p> $fullpath = $dir."/".$file;</p><p> echo "$fullpathn";</p><p> $i++;</p><p> }</p><p> }</p><p> }</p><p> closedir($handle);</p><p> }</p><p>} </p>
<)。 🎜 >11. PHP では、現在のスクリプトの名前 (パスとクエリ文字列を除く) が事前定義された変数 (1) に記録され、現在のページにリンクする URL が事前定義された変数 (2) に記録されます。
答え: echo $_SERVER['PHP_SELF']; echo $_SERVER["HTTP_REFERER"];
3. HTTP 1.0 では、ステータス コード401 の意味は (4) で、「ファイルが見つかりません」というプロンプトが返された場合は、ヘッダー関数を使用でき、そのステートメントは (5) です。
4. 配列関数arsort の関数は (6)、ステートメント error_reporting(2047) の関数は (7) です。
答え: (6) 配列を逆ソートし、インデックス関係を維持します (7) すべてのエラーと警告
7. include ステートメントと require ステートメントは両方とも別のステートメントを配置できます。現在のファイルに含まれるファイル間の違いは (12) です。同じファイルを複数回インクルードすることを避けるために、それらをステートメント (13) に置き換えることができます。
答え: Serialize() /unserialize()
9.一个函数的参数不能是对变量的引用,除非在php.ini中把(15)设为on.
答:allow_call_time_pass_reference
strrev($str)<br />{<br /> $len=strlen($str);<br /> $newstr = '';<br /> for($i=$len;$i>=0;$i--)<br /> {<br /> $newstr .= $str{$i};<br /> }<br /> return $newstr;<br />}
1)<br />get_ext1($file_name)<br />{<br /> return strrchr($file_name, '.');<br />}<br /><br />2)<br />get_ext2($file_name)<br />{<br /> return substr($file_name, strrpos($file_name, '.'));<br />}<br /><br />3)<br />get_ext3($file_name)<br />{<br /> return array_pop(explode('.', $file_name));<br />}<br /><br />4)<br />get_ext4($file_name)<br />{<br /> $p = pathinfo($file_name);<br /> return $p['extension'];<br />}<br /><br />5)<br />get_ext5($file_name)<br />{<br /> return strrev(substr(strrev($file_name), 0, strpos(strrev($file_name), '.')));<br /><p>}</p>
$_SERVER[‘REMOTE_ADDR’]
mysql_fetch_row() 把数据库的一列储存在一个以零为基数的阵列中,第一栏在阵列的索引 0,第二栏在索引 1,如此类推。mysql_fetch_assoc() 把数据库的一列储存在一个关联阵列中,阵列的索引就是栏位名称,例如我的数据库查询送回“first_name”、“last_name”、 “email”三个栏位,阵列的索引便是“first_name”、“last_name”和“email”。mysql_fetch_array() 可以同时送回 mysql_fetch_row() 和 mysql_fetch_assoc() 的值。
29.防止SQL注射漏洞一般用__addslashes___函数。