Re: [請益] 將一個有行號的php檔去行號

看板PHP作者 (真理斯金)時間17年前 (2008/06/29 00:53), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/4 (看更多)
※ 引述《dinos (守護神)》之銘言: : ※ 引述《Geniusking (真理斯金)》之銘言: : : 假設我原始的檔案如下,有行號。 : : 1. <?php : : 2. header('content-type: text/html; charset=big5'); : : 3. ?> : : 我寫一個php程式可以把這個檔案上傳到server的空間 : : 然後用fopen開這個檔把他的行號用str_replace去掉 : : 但我不知道怎麼直接寫到原本開的檔,這時已經讀到第2行了 : : 所以我寫入的話會寫到第2行(?) : : 雖然我開新檔寫入可以達到我要的,上傳後要去行號程式碼如下 : : 可是這樣就變成有兩個檔案,除非刪掉原本的 : : 有辦法直接上傳一個有行號的php檔然後單單對這個檔去行號嗎?(不開新檔) : if(!empty($_FILES['UpFile']['name'])){ : file_put_contents($upload_dir . $_FILES['UpFile']['name'], : trim(preg_replace('/^1\./','', : preg_replace('/[\r\n]+\s*\d+\./',"\n", : file_get_contents($_FILES['UpFile']['tmp_name']) : ) : )) : ); : } 謝謝大大的指點,我做了一點修改 if(!empty($_FILES['UpFile']['name'])){ file_put_contents($upload_dir . $_FILES['UpFile']['name'], preg_replace('/\d*\.\s/','', file_get_contents($_FILES['UpFile']['tmp_name'])) ); } 然後把下列的php檔放進去可以成功的去行號,也可以去開頭的空白 不知道大大的程式中,我去掉的部分有什麼必要存在之處,謝謝 1. <?php 2. header('content-type: text/html; charset=big5'); 3. ?> 4. 5. <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 6. <input type="text" name="num" /> 7. <input type="submit" value="轉換" /> 8. </form> 9. 10. <?php 11. $number = $_POST['num']; 12. $arr = array( "零", "一", "二", "三", "四", "五", "六", "七", "八", "九" ); 13. if( $number > 100 ) 14. $str .= $arr[$number/100].百; 15. else 16. $str .= "零"; 17. 18. if( $number > 10 ) 19. $str .= $arr[$number%100/10].十; 20. else 21. $str .= "零"; 22. 23. $str .= $arr[$number%10]; 24. echo $str; 25. ?> -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.110.128.33

06/29 09:57, , 1F
我知道了,我寫這樣的話,內容的也會被去掉@@
06/29 09:57, 1F
文章代碼(AID): #18Pco2zk (PHP)
文章代碼(AID): #18Pco2zk (PHP)