2010-08-29 25 views
2

我創建了一個桌面遊戲,並且有一個元素可以手動創建,但這是一項非常耗時的任務,所以經過大量研究後,我決定學習使自動化任務的php。這是我想要做的,並希望能夠幫助我完成這項任務的特定學習資源的任何指導。灰鬍子的新手需要php指導

創建4個10 x 10表格,每個單元從0 = 99開始按順序編號。

理想編號將是在細胞內,但如果我真的要我可以使用網格,而不是協調

那麼我想隨機填充單元,每個表一次一個,有兩個字母串一個現有的數組。如表1 0TE 1GR 2MN 3TE 4KN ....

話,我希望能夠打印的表格

順便說一句,因爲我希望球員能夠在網上建立自己的表,我選擇了PHP,它也將從長遠來看,對我來說是最有利的,因爲我永遠不會成爲專業程序員。

乾杯唐

+3

歡迎使用stackoverflow,但本網站提供的問題可以用簡潔客觀的方式回答。你必須提出更精確,更專注的問題。 – Artefacto 2010-08-29 00:45:25

+6

43幾乎不老。我應該減少虛假廣告;)。至於其他......你可能最好從任務一開始,當你碰到一個絆腳石時,來這裏尋求答案。 – Codeacula 2010-08-29 00:45:55

+1

歡迎來到StackOverflow,你可能想看看這個http://stackoverflow.com/editing-help – BrunoLM 2010-08-29 00:49:12

回答

1

首先,一個很好的PHP參考是online manual

網格可以最容易地通過使每一個處理盒一個<div>或,因爲這是表格數據表中的一個<td>。要在php中實現這一點,請使用for()一個或兩個循環。

你必須在這個for()循環中編號和插入隨機字符串。

從數組中選取隨機元素使用array_rand()。 (info on arrays in PHP)。

你可能會想用CSS做你的樣式。

如果您不使用HTML/CSS,並決定只在非HTML環境中使用PHP輸出,那麼您需要使用the plethora of PHP string functions。在這些情況下,str_pad()printf()對格式化輸出特別有用。

最後,共享/測試代碼Codepad & Codepad Viper是太棒了。

0

如何編寫代碼很大程度上取決於您所擁有的2個字母字符串的數組來自哪裏......但這裏是一些隨機生成的2個字母串的自足例如:

$strings = range('A','Z'); 
for ($a = 0;$a < 100; $a++) { 
    $array[] = $strings[rand(0,25)] . $strings[rand(0,25)]; 
} 

for ($table = 1; $table <= 4; $table++) { 
    $count = 0; 
    $tarray = $array; 
    echo "table " . $table . "<br/>"; 
    echo "<table border='1'>"; 
    for ($x = 0; $x < 10; $x++) { 
    echo "<tr>"; 
    for ($y = 0; $y < 10; $y++) { 
     $alpha = array_splice($tarray,rand(0,count($tarray)-1),1); 
     echo "<td>" . $count . $alpha[0] . "</td>"; 
     $count++; 
    } 
    echo "</tr>"; 
    } 
    echo "</table>"; 
} 

可以縮短這個具有完全隨機生成2個字母串,但我特別想證明使用array_splice(),如果你有一個實際的數組100(或400?)2個字母的字符串,並希望做一個「挑一次」的交易,你隨機選擇它,只能在一個單元格上使用它。

+0

http://codepad.viper-7.com/mW2nv0 ...順便說一句,如果你有一個數組100(或400)2字母字符串,你想做一個「挑一次」的交易,'shuffle()'可能會更簡單 - http://php.net/manual/en/function.shuffle.php – 2010-08-29 02:15:04