-2

私はこのコードを完成させましたが、私が望むようには機能していません。文字列の一部に色を付けようとしています。色は function によって決定されますgetcolor。これは raw transform と呼ばれる関数によって決定されます。この関数は、生のスコアを私のスイッチの場合の 1 ~ 9 のスコアに変換します。誰でも助けを提供できますか?$col別の関数によって割り当てられます-引数のために、次のように定義されているとしましょう: $col= 0.

<?php

$raw= 650;
function rawtransform($raw) {
  $score = (int)($raw/50)-9;
}
    //==========================================================================
//            Function to decide which color system                         //
//==========================================================================   
function getcolor($score, $col)
{
switch ($score){
// to return the function best way is to declare the case outcome as a variable eg.$truecol
case 1: /*500-550(Raw Score)*/
    $truecol="<span style=\"color: hsl($col,100%,90%);\">";
    break;
case 2: //550-600
    $truecol="<span style=\"color: hsl($col,100%,80%);\">";
    break;
case 3: //600-650
    $truecol="<span style=\"color: hsl($col,100%,70%);\">";
    break;
case 4: //650-700
    $truecol="<span style=\"color: hsl($col,100%,60%);\">";
    break;
case 5: //700-750
    $truecol="<span style=\"color: hsl($col,100%,50%);\">";
    break;
case 6: //750-800
    $truecol="<span style=\"color: hsl($col,100%,40%);\">";
    break;
case 6: //800-850
    $truecol="<span style=\"color: hsl($col,100%,30%);\">";
    break;
case 7: //850-900;
    break;
case 8: //900-950
    $truecol="<span style=\"color: hsl($col,100%,20%);\">";
    break;
case 9: //950-1000
    $truecol="<span style=\"color: hsl($col,100%,10%);\">";
    break;
   }
}

   $query="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC";

$seq=chunk_split($query,50,"<br />");
getcolor($score);
function colorSequence ($seq,$position,$truecol,$TFBSlength){
    $nucleotides = str_split($seq);
    foreach ($nucleotides as $index => $nucl){
        if ($index == $position){
            echo $truecol;
        }
        if ($index == $position + $TFBSlength){
            echo "</span>";
        }

        echo $nucl;
    }
    echo "\n";
}
colorSequence($seq,49,$truecol,1);
?>

出力には、選択したヌクレオチドの色付けは含まれません。理由を知っている人はいますか?

4

1 に答える 1

0

getcolor($score);の戻り値を変数に代入しません。$truecol = getcolor($score);呼び出す前のようになるはずcolorSequence($seq,49,$truecol,1);です。

于 2012-05-03T11:49:12.950 に答える