Les questions d'entretien PHP les plus complètes et détaillées (avec réponses)

不言
Libérer: 2023-03-24 15:12:01
original
162081 Les gens l'ont consulté

Cet article présente les questions d'entretien PHP les plus complètes et détaillées (avec réponses), qui ont une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Recommandation connexe : Résumé des questions d'entretien PHP en 2019 (collection)

1. Que signifie __FILE__ ? (5 points)
Chemin complet et nom du fichier. S'il est utilisé dans un fichier d'inclusion, renvoie le nom du fichier d'inclusion. Depuis PHP 4.0.2, __FILE__ contient toujours un chemin absolu, alors que les versions précédentes contenaient parfois un chemin relatif.
2. Comment obtenir l’adresse IP du client ? (5 points)

$_SERVER[‘REMOTE_ADDR’]
Copier après la connexion

3. Écrivez une déclaration qui utilise la fonction d'en-tête pour accéder à la page (5 points)

Header(‘location:index.php’);
Copier après la connexion

4 $. str est un paragraphe de texte HTML, utilisez des expressions régulières pour supprimer tous les scripts js (5 points)

$pattern = ‘/<script.*>\.+<\/script>/’;
Preg_replace($pattern,’’,$str);
Copier après la connexion

5 Écrivez une instruction pour supprimer les valeurs nulles​​dans un tableau (5 points. )

$arr = array(‘’,1,2,3,’’,19);
Copier après la connexion

Première méthode :

$array1 = array(&#39;  &#39;,1,&#39;&#39;,2,3);
print_r(array_filter($array1, "del"));
function del($var)
{
       return(trim($var)); 
}
Copier après la connexion

Deuxième méthode :

$arr=array("",1,2,3,"");
$ptn="/\S+/i";
print_r(preg_grep($ptn,$arr));
Copier après la connexion

6. time La fonction d'horodatage et la méthode d'impression de l'heure de la journée précédente (format : année-mois-jour heures : minutes : secondes) (5 minutes)

Time();
Date(“Y-m-d H:i:s”,Strtotime(“-1 day”));
Copier après la connexion

7. Écrire PHP pour la fonction de conversion d'encodage (5 points)

Iconv(‘utf-8’,’gb2312’,$str);
Copier après la connexion

8. $str = "1,3,5,7,9,10,20", quelle fonction peut être utilisée pour convertir la chaîne str dans un tableau de nombres individuels ? (5 points)

$arr = explode(“,”,$str);
Copier après la connexion

9. Le rôle de la fonction Serialize() /unserialize() (5 points)
L'explication de Serialize() et unserialize() dans le PHP manual est :
serialize — Génère une représentation d'une valeur stockable. La valeur de retour est une chaîne. Cette chaîne contient un flux d'octets représentant la valeur sans perdre son type et sa structure et peut être stockée n'importe où.
unserialize — Créer une valeur PHP à partir d'une représentation stockée
Utilisation spécifique :

$arr = array(“测试1″,”测试2″,”测试3″);//数组
$sarr = serialize($arr);//产生一个可存储的值(用于存储)
Copier après la connexion

//Utilisez n'importe quelle méthode (par exemple : si vous $sarr existe dans un fichier texte Vous peut utiliser file_get_contents pour obtenir la valeur stockée et l'enregistrer dans $newarr ;

$unsarr=unserialize($newarr);//从已存储的表示中创建 PHP 的值
Copier après la connexion

10. Écrivez une fonction dont les paramètres sont l'année et le mois, et le résultat de sortie est le nombre de jours dans le mois spécifié. (5 points)

Function day_count($year,$month){
Echo date(“t”,strtotime($year.”-”.$month.”-1”));
}
Copier après la connexion

11. Le chemin d'un fichier est /wwwroot/include/page.class.php. Écrivez une méthode pour obtenir l'extension du fichier (5 points. )

$arr = pathinfo(“/wwwroot/include/page.class.php”);
$str = substr($arr[‘basename’],strrpos($arr[‘basename’],’.’));
Copier après la connexion

12. Quel moteur de template PHP avez-vous utilisé ? (5 points)
Smarty, le moteur de modèles fourni avec thinkphp
13. Veuillez simplement écrire une classe, instancier cette classe et écrire des instructions pour appeler les attributs et les méthodes de la classe (5 points)

Class myclass{
Public $aaa;
Public $bbb;
Public function myfun(){
Echo “this is my function”;
}
}
$myclass = new myclass();
$myclass->$aaa;
$myclass->myfun();
Copier après la connexion

14. Il y a une table ami dans la base de données mysql locale db_test. L'utilisateur de connexion à la base de données est root et le mot de passe est 123.
Les champs de la table ami sont : identifiant, nom, âge, sexe, téléphone, e-mail
Veuillez utiliser php pour vous connecter à MySQL, sélectionnez tous les enregistrements d'âge > 20 dans la table des amis, imprimez les résultats et comptez le nombre total de résultats de requête. (5 points)

<?php
$link = Mysql_connect(“localhost”,”root”,”123”) or die(“数据库连接失败!”);
Mysql_select_db(“db_test”,$link) or die(“选择数据库失败!”);
$sql = “select id,name,age,gender,phone,email from friend where age>20”;
$result = mysql_query($sql);
$count = mysql_num_rows($result);
While($row = mysql_fetch_assoc($result)){
Echo $row[‘id’];
….
}
Copier après la connexion

15. Il y a deux tableaux ci-dessous
identifiant du champ de la table utilisateur (int), nom (varchar)
champ de la table de score uid (int), sujet (varchar), score (int)
Le champ uid de la table de score est associé au champ id de la table utilisateur
Obligatoire pour écrire l'instruction sql suivante
1) Insérer un nouvel enregistrement dans l'utilisateur table, dans le tableau des scores Insérez deux enregistrements associés à l'enregistrement nouvellement ajouté (5 points)
2) Obtenez les cinq enregistrements avec le score le plus élevé pour l'utilisateur avec l'uid 2 dans le tableau des scores (5 points)
3 ) Utilisez une requête conjointe pour obtenir le nom Le score total de l'utilisateur nommé "Zhang San" (5 points)
4) Supprimez l'utilisateur nommé "Li Si", y compris l'enregistrement du score (5 points)
5 ) Effacer le tableau des scores (5 points)
6) Supprimer le tableau des utilisateurs (5 points)

1). mysql_query(“insert into user(name) values(‘test’)”);
$id = mysql_insert_id();
Mysql_query(“insert into score(uid,subjext,score) values(“.$id.”,’english’,’99’)”);
2).$sql = select uid,sunjext,score from score where uid=2 order by score desc limit 0,5;
3).select s.score from score s RIGHT JOIN user u ON u.id=s.uid where u.name=’张三;
4).delete from score where uid in(select id from user where name=’李四’);
Delete from user where name=’李四’;
5).delete from score;
6).drop table user;
Copier après la connexion

Recommandations associées :

question d'entretien php 8 : La différence entre innoDB et myisam

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!