php文本輸出
A. php文本文件輸出問題
PHP文本文件輸出,參考如下:
<?php
Header( "Content-type: application/octet-stream ");
Header( "Accept-Ranges: bytes ");
header( "Content-Disposition: attachment; filename=test.txt ");
header( "Expires: 0 ");
header( "Cache-Control: must-revalidate, post-check=0, pre-check=0 ");
header( "Pragma: public ");
echo "測試/r/n";
echo "測試/r/n";
echo 輸入的內容為文本文件的內容。
?>
B. PHP+TXT讀取文本內容並輸出
//在命令行cmd中運行,能看到3秒的效果
$content=file_get_contents('a.txt');
$arr=explode(" ",$content);
$count=ceil(count($arr)/20);
for($i=0;$i<$count;$i++){
$k=$i*20+20;
for($j=$i*20;$j<$k;$j++){
if(!empty($arr[$j])){
echo$arr[$j].PHP_EOL;
}
}
sleep(3);
echoPHP_EOL;
}
//有看不懂的步驟,可以追問
C. php隨機輸出文本
<?php
/*
假如我有1w行數據在一個txt格式文檔里,想隨機輸出100條數據,輸出完成後刪除源文檔,求代碼
*/
//定義文件路徑
$file='test.txt';
//將文件內容以字元串方式讀入並用 分隔成數組
$data=explode(" ",file_get_contents($file));
//統計數組長度,做容錯處理,防止文件內容沒有100行的時候出錯
$number=count($data);
$number=$number<100?$number:100;
//隨機抽取100個數組鍵名
$keys=array_rand($data,$number);
//循環輸出
foreach($keysas$key){
echo$data[$key].'<br/>';//方便演示加了個換行符,不需要可以去掉
}
//刪除文件
@unlink($file);
D. php讀取txt文本輸出時亂碼如何解決
$text = file_get_contents($filePath);
//$encodType = mb_detect_encoding($text);
define('UTF32_BIG_ENDIAN_BOM', chr(0x00) . chr(0x00) . chr(0xFE) . chr(0xFF));
define('UTF32_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE) . chr(0x00) . chr(0x00));
define('UTF16_BIG_ENDIAN_BOM', chr(0xFE) . chr(0xFF));
define('UTF16_LITTLE_ENDIAN_BOM', chr(0xFF) . chr(0xFE));
define('UTF8_BOM', chr(0xEF) . chr(0xBB) . chr(0xBF));
$first2 = substr($text, 0, 2);
$first3 = substr($text, 0, 3);
$first4 = substr($text, 0, 3);
$encodType = "";
if ($first3 == UTF8_BOM)
$encodType = 'UTF-8 BOM';
else if ($first4 == UTF32_BIG_ENDIAN_BOM)
$encodType = 'UTF-32BE';
else if ($first4 == UTF32_LITTLE_ENDIAN_BOM)
$encodType = 'UTF-32LE';
else if ($first2 == UTF16_BIG_ENDIAN_BOM)
$encodType = 'UTF-16BE';
else if ($first2 == UTF16_LITTLE_ENDIAN_BOM)
$encodType = 'UTF-16LE';
//下面的判斷主要還是判斷ANSI編碼的·
if ($encodType == '') {//即默認創建的txt文本-ANSI編碼的
$content = iconv("GBK", "UTF-8", $text);
} else if ($encodType == 'UTF-8 BOM') {//本來就是UTF-8不用轉換
$content = $text;
} else {//其他的格式都轉化為UTF-8就可以了
$content = iconv($encodType, "UTF-8", $text);
}
E. php中輸出文字選項該怎麼寫呢
在響應訪問時,php只能輸出一種數據格式到客戶端,圖形,文字,或其他格式。參見函數header中對頁面數據格式的定義。
在此例中,已經使用了圖形格式,盡管通過echo輸出的數據也會輸出到客戶端,但不會被瀏覽器正常識別。如果在輸出圖片數據(函數imagejpeg)前通過echo輸出數據,則你的圖片也不會正常顯示。
在客戶端使用檢查接受到的數據,會看到通過echo輸出的數據。
F. 想通過PHP實現讀取txt文本每次刷新網頁隨機獲取5行數據並輸出
如果文件不是太大的話,可以這樣寫:
<?php
$arr=file('a.txt'); //文本文件,請修改合適的名字和位置
$n=count($arr);
for ($i=0;$i<5;$i++) echo $arr[rand(0,$n)]."<br>';
?>
G. 用php製作兩個文本框銀行卡號和密碼用php輸出信息。求源代碼
使用DW排版,然後用PHP列印出來
echo '<input type="number" name="code" placeholder="請輸入銀行卡" /><input type="password" name="pwd" placeholder="請輸入密碼" />';die;
H. php輸出隨機txt文本內容的時候,把txt的行數帶上
<?php
$f='tang.txt'; //文件名
$a=file_get_contents($f); //讀取文件
$allline = explode("\n",$a); //按行數分割文件
$n=count($allline); //獲得總行數
if(isset($_GET['line'])){
$rnd = intval($_GET['line']); //指定行號
}else{
$rnd = rand(,$n-1); //隨機行號
}
//其實獲取到的 $rnd 就是行號了 後續程序可以使用這個變數
$rnd_line=$rnd.":".trim($allline[$rnd]); //輸出 行號:隨機行內容
date_default_timezone_set('PRC');
$tit = date('m 月 d 日')." - star";
?>
I. 如何在php下輸出資料庫中的部分文本
方法挺多的,我說2種:
第一種:程序:使用函數:
mb_substr( ); 取得指定字元串一部分。
舉例:
<?php
//假設你已經獲取了文章,保存在$row['wz']中;
echo mb_substr($row['wz'],0,100,"GBK");//使用gbk碼
?>
但是這么做只是取了前100個字元,所以我推薦第二種方法
第二種方法,使用mysql的函數::SUBSTRING()
假設你的數據表叫abc,文章放在bb里,你需要從開始第一個字到第100個字(符號也算一個)
那麼SQL語句:SELECT SUBSTRING(bb,1,100) FROM abc;
然後程序直接輸出就可以了
例如:
<?php
$res=mysql_query("SELECT SUBSTRING(bb,1,100) FROM abc");
$row=mysql_fetch_row($res);
echo $row[0];
?>
還有第三種,就是樓上的循環,自己抉擇吧。我佩服1樓有那個耐心,自己寫,實在不行才要自己寫的。而且你這是切中文,一旦切錯了,就是亂碼,並且你的中文肯定有符號把,並且也不可能取出100個中文字,最多100個字元或者是幾十個漢字加幾個字元之類的。
----------------有疑問Hi我
J. 用PHP在數據後循環輸出文本框
思路:
1、構建form表單,輸出文本框,用<textarea></textarea>吧,<input/>內不能換行,頁面效果也不好(php、html代碼嵌套寫的話,直接寫就行,建議用smarty,php與模板分離,比較清晰)
2、提交內容,確定用什麼method(post、get)
3、獲取內容,$str=$_POST['name'](name為textarea的name值)
4、$arr=split ('\r\n', $str);按換行符分割字元串為數組
5、循環執行插入語句,$arr每一層都是一條數據