PHPの面接の質問

Jun 23, 2016 pm 02:34 PM

1. PHP を使用して、前日の時刻を 2006-5-10 22:21:21 の形式で出力します。
解決策: echo date('Y-n-d H:i:s', strtotime('-1 day) '));
理由:

書式文字の説明 戻り値の例 、12時間制、フロントガイドゼロありhM があります。 s 秒、先行ゼロ付き 00〜59>S 月の日の後の英語の接尾辞、2 文字 st、nd、rd、または th。 jと合わせて使えます。 t特定の月の日数28から31Tこのマシンが位置するタイムゾーン例: EST、MDT ([翻訳者注] 以下で完了) Windows のテキスト形式(「東部標準時」など)、中国語版では「中国標準時」が表示されます。 w 曜日、数字は 0 (日曜日) から 6 (土曜日) を表します W ISO-8601 形式 年間の週、開始日からの各週月曜日 (PHP 4.1.0 の新機能) 例: 42 (年の第 42 週)Y 4 桁の数字で表される年例: 1999 または 2003
a 小文字の AM 値と PM 値 am または pm
A 大文字の AM 値と PM 値 AM または PM
d 日付、先行ゼロ付き 2 桁 01 〜 31
D 曜日、テキスト表現、3 文字 Mon to Sun
F 月、1 月や 3 月などの完全なテキスト形式 1 月から 12 月
g 時、12 時間形式、先行ゼロなし 1 から 12
G 時制、24時間制、フロントガイドゼロあり
H
小 小 小00〜23
i 先行ゼロ付きの分 00〜59>
I 夏時間かどうか 1の場合夏時間、それ以外の場合0
j 日付、先行ゼロなし 1〜31
l (「L」の小文字) 曜日、フルテキスト形式 日曜日〜土曜日
L が閏年の月かどうか、それ以外の場合は 0
で表される月であり、月次微分ゼロ
1 月から 12 月
n 先行ゼロのない数値の月 1グリニッジ標準時から 12
O 時間 例: +0200
r RFC 822 形式の日付 例: Thu, 21 Dec 2000 16:01:07 +0200
y 🎜 🎜2 桁で表される年🎜 🎜例: 99 または 03🎜 🎜 🎜 🎜z🎜 🎜 その年の日🎜 🎜 0 ~ 366🎜 🎜 🎜
2. HTML と PHP を分離できるテンプレート
説明: 実際、私が使用したテンプレート エンジンには、PHPLib、FastTemplate、および Savant があります。 ://www.sitepoint.com/forums/showthread.php?t=123769

3. バージョン管理にはどのようなツールが使用されますか?
説明: CVS と SVN SVN は次世代の CVS として知られており、強力な機能を備えていますが、私は常に SVN を使用していました。これには次のように答える必要があるかもしれません: Apache 上の CVS サーバーがサーバーとして使用され、WinCVS がクライアントとして使用されます。Apache/DAV 上の Subversion がサーバーとして使用され、TortoiseSVN がクライアントとして使用され、または Subclipse が使用されます。

4. 文字列反転を実装するには?
解決策: strrev 関数を使用します。PHP の組み込み関数は使用せず、自分で記述します。
strrev($str)
{
$len=strlen($str);
$newstr = ''''; for($i= $len;$i>=0;$i--)
{
$newstr .= $str{$i};
}
return $newstr;

5. MYSQL を最適化する方法データベース?
私の答え:
(1)。データベースの設計に関しては、これは DBA とアーキテクトの責任です。必要に応じて、非正規化します (英語では denormalize です)。中国語の翻訳)、ある程度のデータの冗長性により JOIN 操作が回避され、クエリ効率が向上します
(2)。システム アーキテクチャ設計の観点から、テーブル ハッシュは、大量のデータを複数の異なるテーブルにハッシュするために使用されます。高速テーブルと低速テーブルは最新のデータのみを保持します。 、遅いテーブル テーブルは履歴アーカイブです。クラスター、マスターサーバー読み取りおよび書き込み、スレーブサーバー読み取り専用、または N サーバー、各マシンは相互のマスターです (3) と (2) を超えます。インデックスが少ないかどうかを確認してください
(4)。生成される完全結合などの非効率な SQL ステートメントがないかどうかを確認します。デカルト積、多数の Group By と order by、制限なしなど。必要に応じて、データベース ロジックを DBMS 側のストアド プロシージャにカプセル化し、クエリ結果をキャッシュし、各 SQL ステートメントを説明します
(5)。結果が必要であり、クエリ 特定の記事のコメント数、select count(*) ... where Article_id = ? など、必要なデータのみがデータベースから取得されます。 where Article_id = ? の後に msql_num_rows を送信します。ユーザーがタイトルのみを変更した場合は、set title = ? を設定しないでください。大きなテキスト)
(6). たとえば、InnoDB はデッドロックを削減できます

6. トランザクション処理について話します。プログラミング言語には、Hello World を可能にする例があります。このデータベースの教科書には、例として、これに答えてください。しかし、MySQL を使用する企業は、実装に MySQL を使用することはほとんどありません。さらに、Oracle は InnoDB を買収しました。

7. apache+mysql+php で最大負荷を達成します。 解決策:

8. 文字化けせずに中国語のテキスト文字列をインターセプトする方法。
解決策: mb_substr()

9. echo()、print()、print_r() の違い
解決策: echo は戻り値のない言語構造であり、print 関数は基本的に echo と同じです。 print は戻り値を持つ関数であり、配列オブジェクト

10 を出力するために使用されます。PHP では、現在のスクリプトの名前 (パスとクエリ文字列を除く) が事前定義された変数に記録されます。現在のページにリンクされている URL は、事前定義された変数 what に記録されます。
解決策: echo $_SERVER['PHP_SELF']; echo $_SERVER["HTTP_REFERER"];
11. 実行プログラムセグメントが出力されます。 ?
解決策: 0
12. HTTP 1.0 では、「ファイルが見つかりません」というプロンプトが返された場合、ヘッダー関数を使用できますが、そのステートメントは何ですか?
解決策: Unauthorized header("HTTP/1.0 404 Not Found");
13. 配列関数 arsort の関数は、ステートメント error_reporting(2047) の関数です。 (すべてのエラーと警告)。
14. PEAR () のデータベース接続文字列の形式は何ですか?
15. Web ページ上のすべての JS/VBS スクリプトをフィルタリングする (つまり、script タグとそのコンテンツを削除する) 正規表現を記述します: ( /].*?>.*?< ;/script>/si )
16. PHP を Apache モジュールとしてインストールするには、http.conf ファイルで、まずステートメント (1) を使用して PHP モジュールを動的にロードし、次にステートメント (2) を使用して Apache にphp ファイルの拡張子はすべて PHP スクリプトとして処理されます。
解決策: (1) LoadModule php5_module "D:/xampp/apache/bin/php5apache2.dll" (2) AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php .php5 .php4 .php3 .phtml
17. include ステートメントと require ステートメントは両方とも、現在のファイルに別のファイルをインクルードできます。これらの違いは何ですか? 同じファイルを複数回インクルードすることを避けるために、ステートメント () を使用してそれらを置き換えることができます。
説明: 例外が発生すると、include は警告を生成し、require は致命的なエラーを生成します (13) require_once()/include_once()
18. クラスの属性をシリアル化してセッションに保存できるため、クラス全体が後で復元できます。これを使用する必要があります。関数は (serialize() /unserialize() ) です。
19. php.ini で (allow_call_time_pass_reference) が on に設定されていない限り、関数のパラメーターは変数への参照にすることはできません。 .
20. SQL における LEFT JOIN の意味は (自然な左外部結合) です。
tbl_user が生徒の名前 (名前) と生徒番号 (ID) を記録する場合、
tbl_score は生徒の生徒番号 (ID) とテストの得点 (スコア) を記録します (一部の生徒は試験後に退学になり、その記録はありません)。試験科目 (subject)、
各学生の名前と、対応する各科目の合計スコアを出力したい場合は、SQL ステートメントを使用できます: select name, count(score) as sum_score from tbl_user left join tbl_score on tbl_user .ID=tbl_score. tbl_user.ID による ID グループ
21. PHP では、ヒアドキュメントは特殊な文字列であり、その終了マークは次のようにする必要があります (終了識別子が配置されている行には「;」以外の文字を含めることはできません)。
22. フォルダー内のすべてのファイルとサブフォルダーを走査できる関数を作成します。
解決策: /**
* ディレクトリを走査し、結果を配列に保存します。 php4以降をサポートします。 php5 以降では、scandir() 関数を使用して while ループを置き換えることができます。
* @param string $dir
* @return array
*/
function my_scandir($dir)
{
$files = array();
if ( $handle = opendir($dir) ) {
while ( ($file = readdir( $handle)) !== false ) {
if ( $file != ".." && $file != "." ) {
if ( is_dir($dir . "/" . $file) ) {
ファイル[$ file] = rec_scandir ($ dir. "/". $ file); else {
$ files [] = $ file
}}
$ files を返します。
23. フォーラムでの無限分類の実装原理を簡単に説明します。
24. Web ページを開いたときに全画面ウィンドウが表示されるようにデザインします。ウィンドウ内にテキスト ボックスとボタンが表示されます。ユーザーがテキスト ボックスに情報を入力してボタンをクリックすると、入力した情報がメイン Web ページに表示されている間、ウィンドウを閉じることができます。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

11ベストPHP URLショートナースクリプト(無料およびプレミアム) 11ベストPHP URLショートナースクリプト(無料およびプレミアム) Mar 03, 2025 am 10:49 AM

多くの場合、キーワードと追跡パラメーターで散らかった長いURLは、訪問者を阻止できます。 URL短縮スクリプトはソリューションを提供し、ソーシャルメディアやその他のプラットフォームに最適な簡潔なリンクを作成します。 これらのスクリプトは、個々のWebサイトにとって価値があります

Instagram APIの紹介 Instagram APIの紹介 Mar 02, 2025 am 09:32 AM

2012年のFacebookによる有名な買収に続いて、Instagramはサードパーティの使用のために2セットのAPIを採用しました。これらはInstagramグラフAPIとInstagram Basic Display APIです。

Laravelでフラッシュセッションデータを使用します Laravelでフラッシュセッションデータを使用します Mar 12, 2025 pm 05:08 PM

Laravelは、直感的なフラッシュメソッドを使用して、一時的なセッションデータの処理を簡素化します。これは、アプリケーション内に簡単なメッセージ、アラート、または通知を表示するのに最適です。 データは、デフォルトで次の要求のためにのみ持続します。 $リクエスト -

LaravelのバックエンドでReactアプリを構築する:パート2、React LaravelのバックエンドでReactアプリを構築する:パート2、React Mar 04, 2025 am 09:33 AM

これは、LaravelバックエンドとのReactアプリケーションの構築に関するシリーズの2番目と最終部分です。シリーズの最初の部分では、基本的な製品上場アプリケーションのためにLaravelを使用してRESTFUL APIを作成しました。このチュートリアルでは、開発者になります

Laravelテストでの簡略化されたHTTP応答のモッキング Laravelテストでの簡略化されたHTTP応答のモッキング Mar 12, 2025 pm 05:09 PM

Laravelは簡潔なHTTP応答シミュレーション構文を提供し、HTTP相互作用テストを簡素化します。このアプローチは、テストシミュレーションをより直感的にしながら、コード冗長性を大幅に削減します。 基本的な実装は、さまざまな応答タイプのショートカットを提供します。 Illuminate \ support \ facades \ httpを使用します。 http :: fake([[ 'google.com' => 'hello world'、 'github.com' => ['foo' => 'bar']、 'forge.laravel.com' =>

PHPのカール:REST APIでPHPカール拡張機能を使用する方法 PHPのカール:REST APIでPHPカール拡張機能を使用する方法 Mar 14, 2025 am 11:42 AM

PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

Codecanyonで12の最高のPHPチャットスクリプト Codecanyonで12の最高のPHPチャットスクリプト Mar 13, 2025 pm 12:08 PM

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

2025 PHP状況調査の発表 2025 PHP状況調査の発表 Mar 03, 2025 pm 04:20 PM

2025 PHP Landscape Surveyは、現在のPHP開発動向を調査しています。 開発者や企業に洞察を提供することを目的とした、フレームワークの使用、展開方法、および課題を調査します。 この調査では、現代のPHP Versioの成長が予想されています

See all articles