Maison >développement back-end >tutoriel php >Questions d'entretien d'entrée de gamme PHP : questions de programmation (1)

Questions d'entretien d'entrée de gamme PHP : questions de programmation (1)

韦小宝
韦小宝original
2017-11-17 09:54:452222parcourir

Les

questions d'entretien d'entrée de gamme PHP ont été lues par des programmeurs peu expérimentés qui cherchaient simplement un emploi. Cela nous a beaucoup aidé pour passer un entretien, entretienNous sommes souvent testés lors d'entretiens officiels, et les questions d'entretien que nous lisons en ce moment jouent un grand rôle.

1. Écrivez une fonction pour récupérer l'extension de fichier à partir d'une URL standard le plus efficacement possible

Par exemple : http://www .php.cn/course.html doit supprimer html ou .html

Réponse 1 :

function getExt($url){
   $arr = parse_url($url);
   
   $file = basename($arr['path']);
   $ext = explode(".",$file);
   return $ext[1];
}

Réponse deux :

function getExt($url) {
    $url = basename($url);
    $pos1 = strpos($url,".");
    $pos2 = strpos($url,"?");
    if(strstr($url,"?")){
         return substr($url,$pos1 + 1,$pos2 - $pos1 - 1);
    } else {
      return substr($url,$pos1);
    }
}

2. En langage HTML, la balise méta en tête de page 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 modifier la valeur de la partie charset dans une balise méta similaire dans une page HTML standard en big5

Veuillez noter :

  •  1. Nécessité de traiter la page HTML complète, c'est-à-dire pas seulement cette méta-déclaration

  •  2. Ignorer la casse

  • 3. ' et " sont interchangeables ici

  • 4. Les guillemets des deux côtés de 'Content-Type' peuvent être ignorés, mais 'text/ html; charset= gbk' ne fonctionne pas des deux côtés

  • 5. Faites attention à la gestion des espaces supplémentaires

3. Écrivez une fonction pour calculer deux Le chemin relatif d'un fichier

Par exemple,

$a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';

calcule que le chemin relatif de $b par rapport à $a devrait être ../../c/d will () Ajouter

Réponse :

function getRelativePath($a, $b) {   
    $returnPath = array(dirname($b));   
    $arrA = explode('/', $a);   
    $arrB = explode('/', $returnPath[0]);   
    for ($n = 1, $len = count($arrB); $n < $len; $n++) {   
        if ($arrA[$n] != $arrB[$n]) {   
            break;   
        }    
    }   
    if ($len - $n > 0) {   
        $returnPath = array_merge($returnPath, array_fill(1, $len - $n, &#39;..&#39;));   
    }   
       
    $returnPath = array_merge($returnPath, array_slice($arrA, $n));   
    return implode(&#39;/&#39;, $returnPath);   
}   
   echo getRelativePath($a, $b);

4. Écrivez une fonction qui peut parcourir tous les fichiers et sous-dossiers dans un dossier >

Réponse :

function my_scandir($dir)
{
     $files = array();
     if ( $handle = opendir($dir) ) {
         while ( ($file = readdir($handle)) !== false ) {
             if ( $file != ".." && $file != "." ) {
                 if ( is_dir($dir . "/" . $file) ) {
                     $files[$file] = scandir($dir . "/" . $file);
                 }else {
                     $files[] = $file;
                 }
             }
         }
         closedir($handle);
         return $files;
     }
}

Ne vous inquiétez pas après avoir lu les questions d'entretien ci-dessus. questions. Il est préférable de consolider les choses de base. Cela aidera. Entretien avec nous pour trouver un emploi

Recommandations associées :

Brève description des questions d'entretien PHP (1)

Brève description des questions d'entretien PHP junior (2)

<.>Brève description des questions d'entretien PHP junior (3)

Brève description des questions d'entretien PHP d'entrée de gamme (4)

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