Valid XHTML     Valid CSS2    

Listing du fichier codons2aa.php

 

00001     <?php
00002     
00003        #  test des paramètres
00004     
00005        if (!isset(
$argv[1])) {
00006             print " syntaxe : php codons2aa.php nom_de_fichier \n" 
;
00007             exit(-1
) ;
00008        }  ; # fin de test sur les arguments
00009     
00010        $fichier 
$argv[1] ; # récupération du nom du fichier
00011     
00012        # essai d'ouverture du fichier d'entrée
00013     
00014        $FIC 
fopen("$fichier","r") or die("\n impossible d'ouvrir le fichier nommé $fichier \n\n") ;
00015     
00016        # préparation du fichier de sortie
00017        # on utilise le texte avant le dernier point, soit :
00018     
00019        $sortie 
substr($fichier,0,strpos($fichier,".")).".aa" ;
00020     
00021        $FS 
fopen("$sortie","w") or  die("\n impossible d'écrire dans le fichier nommé $sortie \n\n") ;
00022     
00023        # table de correspondance entre codon et acide aminé
00024        # on rajoute ___ vers _ pour gap
00025     
00026        $dcod
= array(
00027     
00028            "aaa"
=>"K",
00029            "aac"
=>"N",
00030            "aag"
=>"K",
00031            "aat"
=>"N",
00032            "aca"
=>"T",
00033            "acc"
=>"T",
00034            "acg"
=>"T",
00035            "act"
=>"T",
00036            "aga"
=>"R",
00037            "agc"
=>"S",
00038            "agg"
=>"R",
00039            "agt"
=>"S",
00040            "ata"
=>"I",
00041            "atc"
=>"I",
00042            "atg"
=>"M",
00043            "att"
=>"I",
00044            "caa"
=>"Q",
00045            "cac"
=>"H",
00046            "cag"
=>"Q",
00047            "cat"
=>"H",
00048            "cca"
=>"P",
00049            "ccc"
=>"P",
00050            "ccg"
=>"P",
00051            "cct"
=>"P",
00052            "cga"
=>"R",
00053            "cgc"
=>"R",
00054            "cgg"
=>"R",
00055            "cgt"
=>"R",
00056            "cta"
=>"L",
00057            "ctc"
=>"L",
00058            "ctg"
=>"L",
00059            "ctt"
=>"L",
00060            "gaa"
=>"E",
00061            "gac"
=>"D",
00062            "gag"
=>"E",
00063            "gat"
=>"D",
00064            "gca"
=>"A",
00065            "gcc"
=>"A",
00066            "gcg"
=>"A",
00067            "gct"
=>"A",
00068            "gga"
=>"G",
00069            "ggc"
=>"G",
00070            "ggg"
=>"G",
00071            "ggt"
=>"G",
00072            "gta"
=>"V",
00073            "gtc"
=>"V",
00074            "gtg"
=>"V",
00075            "gtt"
=>"V",
00076            "taa"
=>"*",
00077            "tac"
=>"Y",
00078            "tag"
=>"*",
00079            "tat"
=>"Y",
00080            "tca"
=>"S",
00081            "tcc"
=>"S",
00082            "tcg"
=>"S",
00083            "tct"
=>"S",
00084            "tga"
=>"*",
00085            "tgc"
=>"C",
00086            "tgg"
=>"W",
00087            "tgt"
=>"C",
00088            "tta"
=>"L",
00089            "ttc"
=>"F",
00090            "ttg"
=>"L",
00091            "ttt"
=>"F",
00092            "___"
=>"_"
00093     
00094        ) ; 
# fin de tableau de décodage
00095     
00096        # parcours du fichier avec conversion par paquets de 3
00097     
00098        $nbl 
;
00099        while (!feof
($FIC)) {
00100          $nbl
++;
00101          $lig 
fgets($FIC,4096) ;
00102          if (strlen
($lig)>0) {
00103             $lng  
strlen($lig)/;
00104             $nlig 
"" ;
00105             for ($idc
=0;$idc<$lng;$idc++) {
00106                 $nlig 
.= $dcod[substr($lig,3*$idc,3)] ;
00107             } ; # fin de pour idc
00108             if (
$nbl<=3) {
00109                if ($nbl
==1) { print "\n pour vérification, affichage des 3 premières lignes (ou moins) :\n\n" ; } ;
00110                print " Ligne 
$nbl \n" ;
00111                print "       codons         : 
$lig\n" ;
00112                print "       acides aminés : 
$nlig\n" ;
00113             } ; # fin de si on est dans les trois premières lignes
00114          } ; 
# fin de si ligne non vide
00115          fputs
($FS,"$nlig\n") ;
00116        } ; # fin de tant que
00117     
00118        # fermeture des fichiers et message de fin
00119     
00120        fclose
($FIC) ;
00121        fclose
($FS) ;
00122     
00123        print "\n vous pouvez utiliser 
$sortie \n\n"
00124     
00125     ?>

La coloration syntaxique est réalisée par un enrobage de la function php nommée highlight_file

mais si vous préférez, vous pouvez utiliser celle de SyntaxHighlighter ou même celle de geshi.

Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.

 

 

retour gH    Retour à la page principale de   (gH)