贛州樂航網絡科技有限公司

贛州知名軟件(jiàn)服務商,專注軟件(jiàn)産品研發

資訊分(fēn)類

Information Classification
公司動态
技術(shù)分(fēn)享
推薦閱讀(dú)
營銷推廣
網絡安全
幫助中心
首頁 - 資訊動态 - 技術(shù)分(fēn)享
技術(shù)分(fēn)享

thinkphp批量更新替換某個表中的鏈接

發布時間:2024-03-19 | 浏覽次數:2146次
描述
采用的思路(lù)是首先批量循環表得(de)到數組,然後去(qù)循環數組,在循環的每一項當中使用str_replace替換得(de)到新的鏈接,然後再去(qù)更新
詳情

在實際的開發業務中經常會遇到需要更新舊的鏈接,比如(rú)存儲的圖片舊的鏈接失效,我們遷移到新的之後就(jiù)需要替換成新的鏈接。亦或是将存儲的遠(yuǎn)程圖片的http鏈接改換成https。以下代碼封裝,可(kě)以直接輸入表名和字段名進行替換,可(kě)以根據自(zì)己的業務進行調整

public function table ($table_name,$field)
{
	$list = Db::name($table_name)
		->field('id,'.$field)
		->select();
	foreach ($list as $k => $v)
	{
		$host = str_replace('https://', 'http://', $v[$field]);
		Db::name($table_name)
			->where('id',$v['id'])
			->update([
				$field => $host
			]);
	}
}

© 2024 贛州樂航網絡科技有限公司版權所有     

在線客服

在線客服

電話(huà)咨詢

電話(huà)咨詢

撥打咨詢電話(huà): 18270723799
微信咨詢

微信咨詢

二維碼
返回頂部