『壹』 php這個代碼,如何設置從第二行開始遍歷。
你可以這樣,把$data定義成一個數組,先將內容讀入數組,然後從數組的第二個開始讀取解析。
『貳』 php問題。程序的第二行是什麼意思詳解
<?php
//$開頭,以字母和下劃線開始,後面是0或多個字母和數字
$ereg='^[$][[:alpha:]_][[:alnum:]]*';
//用ereg函數進行匹配(註:ereg函數已經要廢棄,請使用preg_系列函數替換)
ereg($ereg,'$_name',$register);
var_mp($register);
對於上面的正則,應該是要匹配變數名,但是並沒有寫對。關於變數的定義,手冊是這么說的:
變數名與PHP中其它的標簽一樣遵循相同的規則。
一個有效的變數名由字母或者下劃線開頭,後面跟上任意數量的字母,數字,或者下劃線。
按照正常的正則表達式,它將被表述為:'[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*'。
來自:
不考慮中文命名,可以修改為:$ereg='^[$][[:alpha:]_][[:alnum:]_]*';
關於[:alpha:]/[:alnum:]的定義,請參考:
『叄』 php遍歷指定文件夾讀取指定後綴為.php和.net的文件內容的第二行並輸出
你試試看吧:
<?php
$real_dir='.';//你要打開的文件夾
if ($dir = @opendir($real_dir)) {
while (($file_name = readdir($dir)) !== false){
$path_parts = pathinfo($file_name);
if($path_parts['extension']=='.php' || $path_parts['extension']=='.net'){
$fp=fopen($file_name,'r');
$line=fgets($fp);
$line=fgets($fp);
echo "文件{$file_name}的第二行內容是:{$line}<br>\n";
fclose($fp);
}
closedir($dir);
}
} else echo "打開文件夾失敗:$real_dir";
?>
『肆』 php寫入數據到php文件第2行 以及更改第3行數據 會的來
下面是完整的代碼:
//根據你的PHP設置自已可以把<?php替換為<?
<?php
//要更改的php文件
$filename = 'id.php';
//要插入的內容
$addContent = "wole\n";
//要更改的內容
$updateContent="qwe\n";
// 確定文件存在並且可寫。
if (is_writable($filename)) {
// 將文件讀入數組,每行是一條記錄
$lines = file ($filename);
// 使用寫入方式打開打開$filename,文件指針將會在文件的開頭
if (!$handle = fopen($filename, 'w')) {
print "不能打開文件 $filename";
exit;
}
//在數組中循環,當到達第2行時插入新的內容。
foreach ($lines as $line_num => $line) {
if($line_num==1){
//將$addContent寫入到文件中。
if (!fwrite($handle, $addContent)) {
print "不能寫入到文件 $filename";
exit;
}
}
//寫入原來的行內容到文件中
if (!fwrite($handle, $line)) {
print "不能寫入到文件 $filename";
exit;
}
}
//更改數據第3行zxcv為qwe,把上面foreach注釋掉,打開下面注釋掉的代碼
// foreach ($lines as $line_num => $line) {
// if($line_num==2){
// //將$updateContent寫入到文件中。
// if (!fwrite($handle, $updateContent)) {
// print "不能寫入到文件 $filename";
// exit;
// }
// }
// else{
// //寫入原來的行內容到文件中
// if (!fwrite($handle, $line)) {
// print "不能寫入到文件 $filename";
// exit;
// }
// }
// }
fclose($handle);
} else {
print "文件 $filename 不可寫";
}
?>
『伍』 php里有沒有指定讀取第幾行的函數
php提供了內置函數fgets(),從文件指針中讀取一行。代碼如下:<?php $file=fopen("D:\\CHENCHENG\\myqq.txt","r"); while(! feof($file)){ $rows = fgets($file); echo "你要的第三行內容就是$rows[2]";}
『陸』 php逐行讀取文件,逐行修改文件,刪除指定行
修改和刪除指定行,我們一般用file將文件內容讀取到數組中,根據數字索引比較容易修改,但是你要求用文件指針,這個比較麻煩,不管你用的是filesystem的函數還是spl類函數,都不可避免一個問題,對一個文件流操作,最多替換流中間的某一段內容,不可能實現插入,又不是c語言的鏈表,
//修改第二行內容
$f=fopen('test.txt','r+');
$i=1;
while(!feof($f)){
if($i==2){
fseek($f,0,SEEK_CUR);
fwrite($f,'aad');//這里的修改是替換形式,如果修改後這一行的長度比原來短,那麼可以用空格填充到原來長度,這樣實現修改,而且不影響後面的內容,但是修改後的比原來長就麻煩了,
break;
}
fgets($f);
$i++;
}
fclose($f);
//刪除行同修改行一樣,只不過是將原來行替換為同等長度的空格串
$f=fopen('test.txt','r+');
$j=1;
while(!feof($f)){
if($j==2){
$row=fgets($f);
$len=strlen($row);
echoftell($f)-$len."<br>";
fseek($f,ftell($f)-$len);
fwrite($f,str_pad('',$len,''));
break;
}
fgets($f);
$j++;
}
fclose($f);
『柒』 php提取mysql資料庫某表的第二行內容的代碼
$query = "select * from usermain limit 1,1";
如果不改sql語句,可以用
$i=0;
while($row=mysql_fetch_array($result)){
if($i==1){
echo $row[0].$row[1].$row[2]...;
}
$i++;
}
你可以試下直接輸出
echo $row[1][0].$row[1][1].$row[1][2]...;
『捌』 php讀取逐行讀取文件
換個1mb的文本它肯定有空格換行,具體操作如下代碼:
$file = file("welcome.txt");
foreach($file as &$line) echo $line.'<br />';
這個更方便, file()直接把文本按行轉換成數組
fgets如果沒指定第二參數,將直接讀取到緩存結束為止, 其實它不以換行來循環的,它的第二參數也是限制每次讀取的字元個數而已。
『玖』 如何用PHP讀取txt檔的指定第幾行文字
直接用file()函數就可以了。
<?php
$txt=file('a.txt');
echo $txt[3];//讀取第四行內容。因為數組的默認鍵值是0開始的
?>
『拾』 PHP如何從文本中提取指定行數內容
PHP如何從文本中提取指定行數內容?在php中,通過fopen()方法打開文件,在while中使用fgets()方法獲取每行數據,每讀到一行,就使用標識記錄一次,通過累計記錄數計算出文件的行數。下面介紹實現的過程。
方法/步驟分步閱讀
1
/7
新建一個php文件,命名為handle.php,用於講解PHP怎麼獲取文件的行數。
2
/7
新建一個文本文件,命名為test.txt,在裡面輸入四行數據,分別是aaa,bbb,ccc,ddd。
3
/7
在handle.php文件里,使用fopen方法以只讀方式打開test.txt文件,代碼如下:
4
/7
在handle.php文件里,創建一個初始變數i,用於保存文件內容的行數。
5
/7
通過while()語句,使用fgets方法從文件指針中讀取一行,每讀取一行,變數i自加一,直到到達文件末尾停止while的執行。
註:!feof($handle),函數檢測是否已到達文件末尾。
6
/7
最後,使用echo輸出文件的行數,並通過fclose關閉文件資源。代碼如下:
7
/7
在瀏覽器執行handle.php文件,查看輸出的行數,執行的結果為4行。
內容僅供參考並受版權保護