検索
ホームページバックエンド開発PHPチュートリアルPHP に関するいくつかの面接質問の分析

1. PHP を使用して、前日の時刻を 2006-5-10 22:21:21

$yesterday = mktime(0, 0, 0, date("m") の形式で出力します。 ) , date("d ")-1, date("Y"));

echo date("Y-M-d h:i:s", $yesterday);

注: mktime は UNIX タイムスタンプを返します。

int mktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]

2. echo()、print()、print_r() の違い

見てくださいphp .net 上の関数定義は明確に理解できます: echo

Output 1つ以上の文字列 変数に関する情報 変数に関する人間が判読できる情報 さらに:

printf書式設定された文字列を出力 - F書式設定された文字列を返す

フラッシュ - フラッシュ 出力バッファ

3. HTMLとPHPを分離できるテンプレート

php4には(IntegratedTemplate、IntegratedTemplateExtension)が付属しています

など、プログラムやデータベースの処理を容易にします。次に、プログラムを使用して、テンプレート タグを含む静的ページを呼び出します。 ただし、smarty はキャッシュメカニズムに基づいており、保存用の一時ファイルを生成するための templates_c ディレクトリが存在します。これを自分で作成すると、より複雑になります。 ロジックとパフォーマンスの分離が鍵 単純にHTMLとPHPを分離するのではなく、正しい方法で

3. テンプレートエンジンとフレームワークの違いに注目し、 MVCの視点。

4. バージョン管理にはどのようなツールが使われていますか? 5. 文字列反転の実装方法は?

strrev() もしあなたが十分考慮して(漢字の問題)、次のコードを見つけました:

1.function reverse($str)
{
     $len=strlen($str);
     $newstr = '';
     for($i=$len;$i>=0;$i--)
     {
         $newstr .= $str{$i};
     }
     return $newstr;
}

    2. join("",array_reverse(str_split($str,1))),str_split($str,1)函数按长度分割字符串。explode()按分割符分割字符串.

    3.function rev_str($str)
   {
    $len = strlen($str);
    for($i=0;$i<$len;$i++)
    {
      $temp_str=substr($str,0,1);
      if(ord($temp_str) > 127)
      {
         $i++;
         if($i<$len)
         {
           $new_str[]=substr($str,0,3);
           $str=substr($str,3);
          }
       }
   else
      {
        $new_str[]=substr($str,0,1);
        $str=substr($str,1);
      }
    }
    return join(array_reverse($new_str));
}

6 、MYSQLデータベースを最適化する方法。 主にいくつかの観点から:

ハードウェアの最適化、ディスクの最適化、オペレーティングシステムの最適化、アプリケーションプログラミングインターフェイスの選択

など。参照: http://www.phpdo.net/index.php/optimization-mysql.html インデックスを使用する など、最適化されたクエリ も重要です。

7. PHP とはどういう意味ですか?  8、MYSQL取得当前时间的函数是?格式化日期的函数是

   mysql:    now() ;      date_format();

              php:      time();   date();

  9、实现中文字串截取无乱码的方法。

          其核心是处理中文问题,见blog:http://www.cnblogs.com/nbkhic/archive/2011/07/16/2108335.html

         很多处理都是这些思路,如何判断汉字边界的问题,防止出现汉字截断。


  10、用PHP写出显示客户端IP与服务器IP的代码
              $_SERVER["SERVER_ADDR"]         这个是服务器ip
              $_SERVER["REMOTE_ADDR"]        这个是客户端ip
              _SERVER显示服务器和执行环境信息。http://php.net/manual/en/reserved.variables.server.php
                     11、语句include和require的区别是什么?为避免多次包含同一文件,可用(?)语句代替它们? 

                    include如果包含出错,报错继续执行。

                    requre如果出错,终止执行脚本。

                    requre_once() ; 包含一次

更深入一步理解:http://blog.csdn.net/followingturing/article/details/8102789        

  12、如何修改SESSION的生存时间

                    通常是修改php.ini中某个配置项值,可google之。               

  13、有一个网页地址, 比如PHP研究室主页: http://www.phpv.net/index.html,如何得到它的内容?

                     file_get_contents();

                     fopen()都可以。  

                     复杂的话,用curl。

  14、在HTTP 1.0中,状态码401的含义是?;  如果返回“找不到文件”的提示,则可用 header 函数,其语句为?;

                       401:需要用户验证。 get_headers();

                       其它常用:200,301,302,404等等。 详见:http://baike.baidu.com/view/1790469.htm                       

  15、在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?

                    非常好的一项技术,用好了很方便,本质一句话:字符串输出技术

リテラシー、無視。谈 17、MVC の理解について話します







🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜 🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜🎜 🎜🎜🎜 🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜 🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜🎜 🎜 🎜🎜 🎜🎜 🎜🎜 🎜🎜 は無視します。贴 18. 10 人の名前の最も多い SQL を作成するには、以下の表を使用します: メンバー (ID、ユーザー名、投稿、PASS、電子メール) 🎜メンバーから上位 10 人のユーザー名を選択投稿の説明で並べ替えます🎜🎜🎜🎜🎜🎜 🎜🎜🎜🎜🎜 19. PHPにおける値渡しと参照渡しの違いを説明してください。いつ価値を渡すか、いつ参照しますか? 🎜🎜🎜🎜変更されることになります。 🎜🎜🎜 20. PHPのerror_reportingの機能とは何ですか? 25. メールの形式が正しいかどうかを検証する関数を書いてください(2点)

26. 現在実行されているスクリプトのパスを取得するパラメータを含めて取得する方法を簡単に記述してください。 (2点)

27. SESSIONの生存時間を変更する方法 (1点)

28. JSフォームのポップアップダイアログの機能とは何ですか? ? (2点)

29 , JSのリダイレクト機能とは? (2点)

30. foo()と@foo()の違いは何ですか? ? (1 点)

31. メソッドと属性なしで「myclass」という名前のクラスを宣言する方法は? (1 点)

32. 「myclass」という名前のオブジェクトをインスタンス化する方法は? (1 点)

33. クラスの属性にアクセスして設定する方法は? (2 点) 34. mysql_fetch_row() と mysql_fetch_array の違いは何ですか? (1 点) 35. GD ライブラリは何に使用されますか? (1 点) point)

36. PHP に HTML コードを入力するいくつかの方法を指摘します。 (1点)

37. 次の関数のうち、ファイルを開いて読み書きできるものはどれですか? (1点)
(a) fget() (b) file_open() (c) fopen () ( d) open_file()

38. 次のオプションのうち、users 配列に john を追加しないものはどれですか? (1 点)
(a) $users[] = 'john';
(b ) array_add($users,'john');

(c) array_push($users,'john');
(d) $users ||= 'john';
39. 以下はプログラムの入力? (1点)
$num = 10;
function multiply(){

echo $num;
?>
40. PHPを使って簡単なクエリを書く「Zhang San」という名前のコンテンツをすべて見つけて印刷します(2 点)
テーブル名 UserName Tel Content Date
张三13333663366 大学卒業 2006-10-11
2006. _select_db("DB",$mysql_db);
41. 使い方次のクラスを説明し、次の意味を説明してください。 (3)
class test{ 42 , write SQL ステートメントの形式: Insert、update、delete (4 点) テーブル名 UserName Tel Content Date
06-10 -15
021-55666▢ .2006-10-15工業中等学校卒業

(a) 新しい記録があります (Xiao Wang 1325474) 8547. 2007-05-06 に高校を卒業しました )。 SQL ステートメントを使用してテーブルに追加してください
( b) SQL ステートメントを使用して Zhang San の時間を現在のシステム時間に更新してください
(c) Zhang Si という名前のすべてのレコードを削除するように書き込んでください
43 . データ型 (int char varchar datetime text ) の意味を書いてください; varchar と char の違いは何ですか (2 点)

44. MySQ の自動インクリメント型 (通常はテーブル ID フィールド) を ( ?)フィールド(1点)
45 、以下のプログラムの出力結果を書きます(1点)
$b=201;
$c=40;
$a=$b> $c?4:5;
echo $a ;
?>
46. 変数が設定されているかどうかを検出する関数はありますか? ( 2点)

47. クエリ結果セットの総数を取得する関数は何ですか(1点)
48. $arr = array('james', 'tom', 'symfony'); 最初の要素の値(1点)を出力してください

49. ','で区切って文字列に結合してください出力 (1 点) 50. $a = 'abcdef'; $a の値を取り出して最初の文字を出力してください (1 点) 51. PHP は SQL Server/oracle などのデータベースに接続できますか? (1 点) ) 52. PHP5のパーミッション制御修飾子を書いてください(3点) 53. php5 Functionのコンストラクタとデストラクタを書いてください(2点)

54. PHPMYADMINを使って以下を完成させてください

(1)作成テーブル名は message で、以下のフィールド (3 ポイント) があります。

(2) 上記と同じニュースリリースシステム: テーブルコメントはユーザーの返信内容を記録し、フィールドは以下の通り(4点)
comment_id 返信id
id 記事id、関連付けられたメッセージテーブルid

Comment_content 返信内容

次に、データベースにクエリを実行して、次の形式で記事タイトルのリストを取得し、返信数が多い順に並べ替える必要があります
記事 ID 記事タイトル クリック数返信番号
SQL ステートメントを使用して、上記のクエリを完了します。記事に返信がない場合、返信数は 0 と表示されます
(3) 上記のコンテンツ管理システムでは、カテゴリ テーブルに分類が保存されます。情報、フィールドは次のとおりです (3 点)
category_id int (4) not null auto_increment;
category_name varchar (40) not null;

ユーザーが記事を入力するときに、 を選択して記事のカテゴリを選択します。ドロップダウン メニュー
このドロップダウン メニューの実装方法を書く
55. PHP では、現在のスクリプトの名前 (パスとクエリ文字列を除く) は、事前定義された変数 ____ と URL に記録されます。現在のページへのリンクは、事前定義された変数 ____middle に記録されます。
56. HTTP 1.0 では、ステータス コード 401 の意味は ____ で、「ファイルが見つかりません」プロンプトが返された場合、ヘッダー関数を使用でき、そのステートメントは ____ です。
57. 配列関数 arsort の関数は ____ 、ステートメント error_reporting(2047) の関数は ____ です。

58.PEARにおけるデータベース接続文字列の形式は____です。

59. Web ページ上のすべての JS/VBS スクリプトをフィルタリングする (つまり、script タグとそのコンテンツを削除する) ための正規表現を書きます: ____。

60. PHP を Apache モジュールとしてインストールするには、http.conf ファイル内で、まずステートメント ____ を使用して PHP モジュールを動的にロードし、次にステートメント ____ を使用して拡張子 php を持つすべてのファイルを Apache にロードさせます。 PHP スクリプトとして。

61. include ステートメントと require ステートメントは、現在のファイルに別のファイルをインクルードできます。これらの違いは ____ です。同じファイルを複数回インクルードすることを避けるために、代わりにステートメント ____ を使用できます。

62. クラスの属性をシリアル化してセッションに保存し、後でクラス全体を復元できるようにするために使用される関数は ____ です。

63. php.iniで___がonに設定されていない限り、関数のパラメータは変数への参照にはなりません

64. SQLにおけるLEFT JOINの意味は____です。 tbl_user が学生の名前 (名前) と学生番号 (ID) を記録する場合、tbl_score は学生 (一部の学生は試験後に退学になり、その記録はありません) の学生番号 (ID) とテストのスコア (スコア) を記録します。テスト科目 (subject) の場合、各学生の名前と、対応する各科目の合計スコアを出力したい場合は、SQL ステートメント____ を使用できます。

65. PHPではヒアドキュメントは特別な文字列であり、そのエンドマークは____でなければなりません。

66. 標準 URL からファイル拡張子をできるだけ効率的に抽出する関数を作成します
例: http://www.sina.com.cn/abc/de/fg? id=1はphpか.php

67. HTML言語ではページ先頭のmetaタグを使ってファイルのエンコード形式を出力することができます 以下は標準的なmeta文です。
標準HTMLページの同様のメタタグ内のcharset部分の値をbig5に変更する関数をPHPを使って書いてください
注意:
1. HTMLページ全体を処理する必要があり、つまり、このメタ ステートメントだけではありません
2 . case を無視します
3. ここでは ' と " は交換可能です
4. 'Content-Type' の両側の引用符は無視できますが、この 2 つは無視できます。 'text/html; charset=gbk' の引用符 サイドビューは機能しません
5. 余分なスペースの扱いに注意してください

68. 2つのファイルの相対パスを計算する関数を書きます
例えば $a = '/a/b/c/d/e.php' ;
$b = '/a/b/12/34/c.php';
$a に対する $b の相対パスが ../../c/d になることを計算し、

に () を追加します 69. フォルダー内のすべてのファイルとサブフォルダーを走査できる関数を書きます。

70. フォーラムにおける無限分類の実装原理を簡単に説明します。

71. PHP を使用してバブルソートおよびクイックソートアルゴリズムを記述します。 オブジェクトは配列にすることができます

72. PHP を使用して逐次検索および二分探索 (二分探索とも呼ばれます) アルゴリズムを記述します。検索は効率を考慮する必要があり、オブジェクトは順序付けされた配列にすることができます

73. 汎用的な 2 次元配列ソート アルゴリズム関数を作成します。PHP 組み込み関数を呼び出すことができます










以上がPHP に関するいくつかの面接質問の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPの抽象クラスまたはインターフェイスに対して、いつ特性を使用しますか?PHPの抽象クラスまたはインターフェイスに対して、いつ特性を使用しますか?Apr 10, 2025 am 09:39 AM

PHPでは、特性は方法が必要な状況に適していますが、継承には適していません。 1)特性により、クラスの多重化方法が複数の継承の複雑さを回避できます。 2)特性を使用する場合、メソッドの競合に注意を払う必要があります。メソッドの競合は、代替およびキーワードとして解決できます。 3)パフォーマンスを最適化し、コードメンテナビリティを改善するために、特性の過剰使用を避け、その単一の責任を維持する必要があります。

依存関係噴射コンテナ(DIC)とは何ですか?また、なぜPHPで使用するのですか?依存関係噴射コンテナ(DIC)とは何ですか?また、なぜPHPで使用するのですか?Apr 10, 2025 am 09:38 AM

依存関係噴射コンテナ(DIC)は、PHPプロジェクトで使用するオブジェクト依存関係を管理および提供するツールです。 DICの主な利点には、次のものが含まれます。1。デカップリング、コンポーネントの独立したもの、およびコードの保守とテストが簡単です。 2。柔軟性、依存関係を交換または変更しやすい。 3.テスト可能性、単体テストのために模擬オブジェクトを注入するのに便利です。

通常のPHPアレイと比較して、SPL SPLFIXEDARRAYとそのパフォーマンス特性を説明してください。通常のPHPアレイと比較して、SPL SPLFIXEDARRAYとそのパフォーマンス特性を説明してください。Apr 10, 2025 am 09:37 AM

SplfixedArrayは、PHPの固定サイズの配列であり、高性能と低いメモリの使用が必要なシナリオに適しています。 1)動的調整によって引き起こされるオーバーヘッドを回避するために、作成時にサイズを指定する必要があります。 2)C言語アレイに基づいて、メモリと高速アクセス速度を直接動作させます。 3)大規模なデータ処理とメモリに敏感な環境に適していますが、サイズが固定されているため、注意して使用する必要があります。

PHPは、ファイルを安全に処理する方法をどのように処理しますか?PHPは、ファイルを安全に処理する方法をどのように処理しますか?Apr 10, 2025 am 09:37 AM

PHPは、$ \ _ファイル変数を介してファイルのアップロードを処理します。セキュリティを確保するための方法には次のものが含まれます。1。アップロードエラー、2。ファイルの種類とサイズを確認する、3。ファイル上書きを防ぐ、4。ファイルを永続的なストレージの場所に移動します。

Null Coulescingオペレーター(??)およびNull Coulescing Assignment Operator(?? =)とは何ですか?Null Coulescingオペレーター(??)およびNull Coulescing Assignment Operator(?? =)とは何ですか?Apr 10, 2025 am 09:33 AM

JavaScriptでは、nullcoalescingoperator(??)およびnullcoalescingsignmentoperator(?? =)を使用できます。 1.??最初の非潜水金または非未定されたオペランドを返します。 2.??これらの演算子は、コードロジックを簡素化し、読みやすさとパフォーマンスを向上させます。

コンテンツセキュリティポリシー(CSP)ヘッダーとは何ですか?なぜ重要なのですか?コンテンツセキュリティポリシー(CSP)ヘッダーとは何ですか?なぜ重要なのですか?Apr 09, 2025 am 12:10 AM

XSS攻撃を防ぎ、リソースのロードを制限し、ウェブサイトのセキュリティを改善できるため、CSPは重要です。 1.CSPはHTTP応答ヘッダーの一部であり、厳格なポリシーを通じて悪意のある行動を制限します。 2。基本的な使用法は、同じ起源からのロードリソースのみを許可することです。 3.高度な使用法は、特定のドメイン名がスクリプトやスタイルをロードできるようにするなど、より微調整された戦略を設定できます。 4。CSPポリシーをデバッグおよび最適化するには、コンテンツセキュリティポリシーレポートのみのヘッダーを使用します。

HTTPリクエストメソッド(取得、投稿、配置、削除など)とは何ですか?それぞれを使用する必要がありますか?HTTPリクエストメソッド(取得、投稿、配置、削除など)とは何ですか?それぞれを使用する必要がありますか?Apr 09, 2025 am 12:09 AM

HTTPリクエストメソッドには、それぞれリソースを取得、送信、更新、削除するために使用されるGET、POST、PUT、および削除が含まれます。 1. GETメソッドは、リソースを取得するために使用され、読み取り操作に適しています。 2. POSTメソッドはデータの送信に使用され、新しいリソースを作成するためによく使用されます。 3. PUTメソッドは、リソースの更新に使用され、完全な更新に適しています。 4.削除メソッドは、リソースの削除に使用され、削除操作に適しています。

HTTPSとは何ですか、なぜWebアプリケーションにとって重要なのですか?HTTPSとは何ですか、なぜWebアプリケーションにとって重要なのですか?Apr 09, 2025 am 12:08 AM

HTTPSは、HTTPに基づいてセキュリティレイヤーを追加するプロトコルであり、主に暗号化されたデータを介してユーザーのプライバシーとデータセキュリティを保護します。その作業原則には、TLSの握手、証明書の確認、暗号化された通信が含まれます。 HTTPSを実装する場合、証明書管理、パフォーマンスへの影響、および混合コンテンツの問題に注意を払う必要があります。

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

メモ帳++7.3.1

メモ帳++7.3.1

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

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

SublimeText3 中国語版

SublimeText3 中国語版

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