第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

文件獲取內(nèi)容和字符串替換多個(gè)文件

文件獲取內(nèi)容和字符串替換多個(gè)文件

PHP
慕蓋茨4494581 2022-12-23 14:31:50
我在名為 test 的文件夾中有許多文件,alpha.php、beta.php 和 gamma.php。我需要獲取這三個(gè)文件的內(nèi)容,并將其中的一個(gè)字符串替換為另一個(gè)字符串。要替換文件夾中的所有內(nèi)容,這行得通:foreach (new DirectoryIterator('./test') as $folder) {    if ($folder->getExtension() === 'php') {        $file = file_get_contents($folder->getPathname());        if(strpos($file, "Hello You") !== false){            echo "Already Replaced";        }        else {            $str=str_replace("Go Away", "Hello You",$file);            file_put_contents($folder->getPathname(), $str);             echo "done";        }    }}但我不想處理文件夾中的所有文件。我只想獲取 3 個(gè)文件:alpha.php、beta.php 和 gamma.php 并處理它們。有什么辦法可以做到這一點(diǎn),或者我必須單獨(dú)獲取文件并單獨(dú)處理它們?謝謝。
查看完整描述

2 回答

?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

正是foreach你想要的:


foreach (['alpha.php', 'beta.php', 'gamma.php'] as $filename) {

    $file = file_get_contents("./test/$filename");


    if(strpos($file, "Hello You") !== false){

        echo "Already Replaced";

    }

    else {

        $str = str_replace("Go Away", "Hello You", $file);

        file_put_contents("./test/$filename", $str); 

        echo "done";

    }

}

你不需要 theif除非你真的需要echos 來(lái)查看何時(shí)有替換:


foreach (['alpha.php', 'beta.php', 'gamma.php'] as $filename) {

    $file = file_get_contents("./test/$filename");

    $str = str_replace("Go Away", "Hello You", $file);

    file_put_contents("./test/$filename", $str); 

}

或者您可以獲得替換次數(shù):


    $str = str_replace("Go Away", "Hello You", $file, $count);

    if($count) {        

        file_put_contents("./test/$filename", $str); 

    }

在 Linux 上,您也可以嘗試使用replacereplexec或某些東西,因?yàn)樗鼈兘邮芏鄠€(gè)文件。



查看完整回答
反對(duì) 回復(fù) 2022-12-23
?
婷婷同學(xué)_

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊

如果它是預(yù)定義的文件,那么您不需要 DirectoryIterator,只需用 3 行或一個(gè)循環(huán)替換內(nèi)容


<?php

$files = ['alpha.php', 'beta.php', 'gamma.php'];


foreach ($files as $file) 

    file_put_contents('./test/'.$file, str_replace("Go Away", "Hello You", file_get_contents('./test/'.$file)));



查看完整回答
反對(duì) 回復(fù) 2022-12-23
  • 2 回答
  • 0 關(guān)注
  • 121 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)