Maison  >  Article  >  développement back-end  >  Analyse de plusieurs questions d'entretien sur PHP

Analyse de plusieurs questions d'entretien sur PHP

巴扎黑
巴扎黑original
2017-08-09 14:24:101191parcourir

1. Utilisez PHP pour imprimer l'heure de la veille au format 2006-5-10 22:21:21

$hier. = mktime(0, 0 , 0, date("m") , date("d")-1 , date("Y"));

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

Remarque : mktime renvoie l'horodatage Unix.

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

2. echo(),print(),print_r() Le la différence entre

et peut être clairement vue en regardant la définition de la fonction sur php.net :

  imprimerSortir une chaîne

 échoSortie une ou plusieurs chaînes

                                                                                                >Dumps informations sur une variable

Impressions informations lisibles par l'homme sur une variable De plus :

                                                                                                                                                                                      🎜>                                                                                                                                                                                     

                                                                                    le tampon de sortie 3. Des modèles qui permettent d'utiliser HTML et PHP séparément

Smarty (un très bon moteur de template), Phplib , Fasttemplete,

php4 est livré avec (IntegratedTemplate, IntegratedTemplateExtension)

                                                                                                                                                                                         Les balises HTML couramment utilisées telles que select, input, etc. sont pratiques pour le traitement des programmes et des bases de données. Utilisez ensuite le programme pour appeler la page statique contenant la balise de modèle.

Cependant, smarty est basé sur le mécanisme de mise en cache. Il existe un répertoire templates_c pour générer des fichiers temporaires pour le stockage. Cet aspect est relativement avancé si vous l'écrivez vous-même, ce sera plus compliqué 2.Séparer la logique et les performances est la bonne façon, plutôt que de simplement séparer HTML et PHP

3. Faites attention à la différence entre les moteurs de modèles et les frameworks, et considérez-la du point de vue de MVC.

4. Quels outils sont utilisés pour le contrôle de version ?

svn,cvs, VSS(ms)

5. Comment réaliser le retournement de chaîne ?

                                                                                                                                                                                                                                                                             🎜>

 6. Méthodes pour optimiser la base de données MYSQL.

Principalement sous plusieurs perspectives : Optimiser le matériel, optimiser le disque, optimiser le système d'exploitation, sélectionner l'interface de programmation d'application , etc.

Référence : http://www.phpdo.net/index.php/optimization-mysql.html
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));
}

De plus,
l'optimisation des requêtes

est également très important, comme Utiliser l'index etc.  

7. La signification de 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是一种特殊的字符串,它的结束标志必须?

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

                                                                                                                                                                                                                  Légèrement, ignorez-le.

 17. Parlez de votre compréhension de mvc

                                                  int sur MVC

18. Écrivez le SQL des noms des dix personnes avec le plus de messages, en utilisant le tableau suivant : membres (id, nom d'utilisateur, messages, pass, email)

               sélectionnez les 10 meilleurs noms d'utilisateur parmi les membres, classés par description de messages 🎜> 19. Veuillez expliquer la différence entre transmettre des valeurs et transmettre des références en php. Quand la valeur de la valeur est-elle transmise ?

Comme C, le traitement sous-jacent est différent et la valeur de transmission est copiée dans un passé de sauvegarde. Si vous souhaitez modifier la valeur de la variable, vous pouvez transmettre l'adresse pour voir les besoins.

20. Quelle est la fonction du rapport d'erreur en PHP ?


>”                                                                                25. Veuillez écrire une fonction pour vérifier si le format de l'e-mail est correct (2 points)

 26. Décrivez brièvement comment obtenir le chemin du script d'exécution actuel, y compris le paramètres obtenus. (2 points)

27. Comment modifier le temps de survie de SESSION (1 point)

28. Le formulaire JS pop-. La fonction de la boîte de dialogue est ?Quelle est la fonction pour obtenir le focus d'entrée ? (2 points)

29. Quelle est la fonction de redirection de JS ? 2 points)

 30. Quelle est la différence entre foo() et @foo() (1 point)

 31. Comment déclarer une méthode nommée "myclass" sans méthodes ni classe Attribute ? (1 point)

 32. Comment instancier un objet nommé "myclass" (1 point)

33. Comment accéder et définir les attributs d'une classe ? (2 points)

34. Quelle est la différence entre mysql_fetch_row() et mysql_fetch_array ? (1 point)

 35. À quoi sert la bibliothèque GD (1 point)

 36. Indiquez quelques façons de le faire ? entrez un morceau de code HTML en PHP. (1 point)

37. Laquelle des fonctions suivantes peut ouvrir un fichier pour lire et écrire le fichier (1 point)
(a ) fget() (b) file_open() (c) fopen() (d) open_file()

 38. Laquelle des options suivantes n'ajoute pas John au tableau des utilisateurs ? 1 points)
 (a) $users[] = 'john';
 (b) array_add($users,'john');
 (c) array_push($users,'john');
 (d) $users ||= 'john';

39. Le programme suivant sera-t-il saisi ? (1 point)
$num = 10; $num = $num * 10;
 } Nom de la table UserName Tel Content Date
Zhang San 13333663366 Diplômé collégial 2006-10-11
: 1361231.》》 1361231. 1361. >>>>>>>>>> Code:
$ mysql_db = mysql_connect ("local", "root", "pass") ;
 @mysql_select_db("DB",$mysql_db);
41. Comment utiliser les classes suivantes et expliquer ce qu'elles signifient (3)
test de classe{

fonction Get_test($num){
$num=md5(md5($num)."Fr ");
return $num;
 }
 }
 42. Écrivez le format de l'instruction SQL : insérer, mettre à jour, supprimer (4 points)
Nom de la table Nom d'utilisateur Tél. Contenu Date
Zhang San 13333663366 Diplômé universitaire 2006-10-11
Zhang San 13612312331 Diplômé de premier cycle 2006-10-15
                   
dans le tableau (b) Veuillez utiliser l'instruction SQL pour mettre à jour l'heure de Zhang San avec l'heure actuelle du système
(c) Veuillez écrire pour supprimer tous les noms nommés Zhang Si Record
43. Veuillez écrire la signification du type de données (int char varchar datetime text); Quelle est la différence entre varchar et char (2 points)

44. Type d'auto-incrémentation MySQ (généralement le champ ID de table) doit être défini sur le champ (?) (1 point)

45. Écrivez les résultats de sortie du programme suivant (1 point)
 $b=201;
 $c=40;

 $a=$b>$c 4:5;
echo $a;
?>
46. Vérifiez si une variable est définie. La fonction est-elle vide ? 2 points)

47. Quelle est la fonction qui obtient le nombre total d'ensembles de résultats de requête (1 point)
48. $arr = array('james', 'tom', 'symfony'); Veuillez imprimer la valeur du premier élément (1 point)

49. Veuillez séparer les valeurs du tableau de la question 41 par des signes ',' et les fusionner dans une sortie de chaîne (1 point)

 50. $a = 'abcdef'; indiquez la valeur de $a Value et imprimez la première lettre (1 point)

51. PHP peut-il être connecté à des bases de données telles que SQL Server/Oracle (1 point)

 52. Veuillez écrire le modificateur de contrôle d'autorisation PHP5 (3 points)

 53. Veuillez écrire le constructeur et le destructeur de PHP5 (2 points)

54. Veuillez utiliser PHPMYADMIN pour compléter ce qui suit

(1) Créez un système de communiqué de presse Le nom de la table est un message et contient ce qui suit. champs (3 points)
id article id
titre titre de l'article
contenu contenu de l'article
category_id article catégorie id
Clics clics

(2) Le même système de communiqué de presse que ci-dessus : la table des commentaires enregistre le contenu des réponses des utilisateurs, et le les champs sont les suivants (4 points)
Comment_id identifiant de réponse
identifiant article id, l'identifiant dans la table des messages associée
comment_content contenu de la réponse
Vous devez maintenant l'obtenir en interrogeant la base de données Une liste de titres d'articles au format suivant, triés par nombre de réponses, avec la réponse la plus élevée en haut
Identifiant de l'article Nombre de clics sur le titre de l'article et de réponses
Utilisation d'une instruction SQL Complétez la requête ci-dessus S'il n'y a pas de réponse à l'article, le nombre de réponses sera affiché comme 0<.>
(3) Dans le système de gestion de contenu ci-dessus, la catégorie du tableau enregistre les informations de classification et les champs sont les suivants (3 points)
category_id int( 4) not null auto_increment;
category_name varchar(40) not null;
Lorsque l'utilisateur saisit un article, sélectionnez-le dans le menu déroulant Définir l'article catégorie
Écrivez comment implémenter ce menu déroulant

55. En PHP, le nom du script actuel (hors chemin et chaîne de requête) Enregistré dans la variable prédéfinie ____ et l'URL renvoyant vers la page actuelle est enregistrée dans la variable prédéfinie ____ ;

56. Dans HTTP 1.0, la signification du code d'état 401 est ____ ; si une invite « Fichier introuvable » est renvoyée, la fonction d'en-tête peut être utilisée et son instruction est ____ ; .
57. La fonction de la fonction de tableau arsort est ____ ; la fonction de l'instruction error_reporting(2047) est ____.

58. Le format de la chaîne de connexion à la base de données dans PEAR est ____.

59. Écrivez une expression régulière pour filtrer tous les scripts JS/VBS sur la page Web (c'est-à-dire supprimer la balise script et son contenu) : ____.

60. Pour installer PHP en tant que module Apache, dans le fichier http.conf, utilisez d'abord l'instruction ____ pour charger dynamiquement le module PHP, puis utilisez l'instruction ____ pour rendre Apache Tous les fichiers portant l'extension php sont traités comme des scripts PHP.

61. Les instructions include et require peuvent inclure un autre fichier dans le fichier actuel. La différence entre elles est ____ afin d'éviter d'inclure le même fichier plusieurs fois, vous pouvez utiliser le. déclaration ___ _pour les remplacer.

62. Les attributs d'une classe peuvent être sérialisés et enregistrés dans la session, afin que la classe entière puisse être restaurée ultérieurement. La fonction utilisée est ____.

63. Le paramètre d'une fonction ne peut pas être une référence à une variable, à moins que ____ soit activé dans php.ini.

64.La signification de LEFT JOIN dans SQL est ____. Si tbl_user enregistre le nom (nom) et le numéro d'étudiant (ID) de l'étudiant, tbl_score enregistre le numéro d'étudiant (ID) et les résultats des tests (score) de l'étudiant (certains étudiants ont été expulsés après l'examen et il n'y a aucune trace d'eux). sujets de test (sujet), si vous souhaitez imprimer le nom de chaque élève et le score total correspondant de chaque matière, vous pouvez utiliser l'instruction SQL____.

65. En PHP, heredoc est une chaîne spéciale, et sa marque de fin doit être ____.
 
 66. Écrivez une fonction pour extraire l'extension de fichier d'une URL standard le plus efficacement possible
Par exemple : http : //www.sina.com.cn/abc/de/fg.php?id=1 Nécessité de supprimer php ou .php

 67. En langage HTML, l'en-tête de la page La balise méta interne peut être utilisée pour afficher le format d'encodage du fichier. Ce qui suit est une instruction méta standard
Veuillez utiliser le langage PHP pour écrire une fonction permettant de convertir le jeu de caractères dans une balise méta similaire dans un fichier. page HTML standard Une partie de la valeur est modifiée en big5
Veuillez noter :
1. Il est nécessaire de traiter la page html complète, c'est-à-dire pas seulement celle-ci méta déclaration
2 .Ignorer la casse
 3. ' et " sont interchangeables ici
 4. Les guillemets des deux côtés de 'Content-Type' peut être ignoré, mais 'text/html; charset=gbk' ne fonctionne pas des deux côtés
5. Faites attention à la gestion des espaces supplémentaires

68. Écrivez une fonction pour calculer deux chemins relatifs d'un fichier
Par exemple $a = '/a/b/c/d/e.php';
$b = '/a/b /12/34/c.php'; Calculez que le chemin relatif de $b par rapport à $a doit être ../../c/d et ajoutez () à

69. Écrivez une fonction qui peut parcourir tous les fichiers et sous-dossiers sous le dossier.

 70. Décrivez brièvement le principe de mise en œuvre de la classification infinie dans le forum.

71. Utilisez PHP pour décrire les algorithmes de tri à bulles et de tri rapide L'objet peut être un tableau

<.>  

72. Utilisez PHP pour décrire les algorithmes de recherche séquentielle et de recherche binaire (également appelée recherche binaire). La recherche séquentielle doit prendre en compte l'efficacité, et l'objet peut être un tableau ordonné .

73. Écrivez une fonction d'algorithme de tri de tableau bidimensionnel qui peut être universelle Vous pouvez appeler la fonction intégrée PHP



<.>








Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn