當前位置:首頁 » 編程語言 » 批量修改php

批量修改php

發布時間: 2022-07-29 01:20:07

1. 求一個批處理, 批量修改php文件固定行里的內容,內容不同

UltraEdit,我完成過同樣的任務,幾百個htm文件里批量改內容,秒殺。

好的工具能讓你事半功倍。具體怎麼用,自己網路,提醒,可以用正則表達式。

2. php批量修改數據

function updatecols($table,$arr){
$sql = "update ".$table." set ";
$total = count($arr);
$i=1;
foreach($arr as $k=>$v){
$sql .= $k."=".$v;
if($i<$total){
$sql .= ",";
}
$i++;
}
return $sql;
}
echo updatecols("table1",array('col1'=>'123','col2'=>'345'));

3. php 批量修改時如何得到各自ID

這個應該沒什麼辦法,一般放到緩存里的都是 特定字元+ID,如果你用循環先查出你要修改的東西的ID也可以,但在大數據量表裡,效率太低,而且容易MYSQL假死。除非你自己為了這方面將特定的數據放到緩存里 。 例如你要修改 name 這個欄位的東西 ,你將資料庫name 的值都放到緩存里,完事讀取出來獲得ID。

4. php如何批量修改某個文件夾下所有文件名的方法

方法如下:我重命名的規則是把所有有空格的全部替換成「_」,然後再後面加一個"_s"。
<?php
$paths = "C://Documents and Settings//sk//Desktop//s//";
$d = dir($paths);
while (false !== ($entry = $d->read())) {
$table_change = array(' '=>'_');
$newName = strtr($entry,$table_change);
$newName = substr($newName, 0,-4);
rename($paths.$entry, $paths.$newName."_s.jpg");
}
$d->close();
echo "done";
?>
以上就是php如何批量修改某個文件夾下所有文件名的方法

5. PHP腳本批量修改文件名

$dir = "files/";
$filearray = scandir($dir);
function changename($str){
return "rr".$str;
}
for($i=3;$i>=2;$i--){
echo $dir.$filearray[$i]."<br>";
rename($dir.$filearray[$i],$dir.changename($filearray[$i]));
}

6. 用php批量修改並替換文件名如何實現

import java .util.*; public class test { public static void main (String[]args){
double sum;//聲明要儲存的變數應發的獎金
Scanner input =new Scanner (System.in);//導入掃描器
System.out.print ("輸入當月利潤");
double lirun=input .nextDouble();//從控制台錄入利潤
if(lirun<=100000){

7. phpcms如何批量修改文章內容

我曾經批量替換過關鍵詞的部分欄位,方法如下:

在phpmaadmin中執行下行代碼:

updatev9_newssetkeywords=replace(keywords,',','')//replace(欄位名,'原來的電話','更新後的電話')


你可以參考下,根據你的問題找到存放內容的那個表,然後批量的把電話更新下。

更新完了之後對phpcms的全站更新一次。


你試下可以不?祝你成功

8. 怎麼快速修改php排版

  • 點擊排版按鈕後,將會彈出一個新的頁面,什麼?沒有?好吧,我知道你的瀏覽器是最棒的,屏蔽了所有的彈出窗口,點擊瀏覽器選項,關閉屏蔽彈出窗口的選項吧,現在再次點擊排版,新頁面終於出來了,而我們的首頁上方會多出一條切換排版模式的選項。

9. 如何用dreamweaver將我的網頁文件批量修改成.php的後綴

我勸你別改了,改了就無法運行了,你只能重新編寫代碼了。.asp網頁與.php網頁是不一樣的,需要不同的伺服器軟體支持,其代碼語法格式也是不一樣的,不是簡單改一下擴展名的事,你可要慎重啊!

10. Thinkphp怎麼批量更新數據

thinkphp批量更新數據可以參考如下三種方法:
方法一:
//批量修改 data二維數組 field關鍵欄位 參考ci 批量修改函數 傳參方式
function batch_update($table_name='',$data=array(),$field=''){
if(!$table_name||!$data||!$field){
return false;
}else{
$sql='UPDATE '.$table_name;
}
$con=array();
$con_sql=array();
$fields=array();
foreach ($data as $key => $value) {
$x=0;
foreach ($value as $k => $v) {
if($k!=$field&&!$con[$x]&&$x==0){
$con[$x]=" set {$k} = (CASE {$field} ";
}elseif($k!=$field&&!$con[$x]&&$x>0){
$con[$x]=" {$k} = (CASE {$field} ";
}
if($k!=$field){
$temp=$value[$field];
$con_sql[$x].= " WHEN '{$temp}' THEN '{$v}' ";
$x++;
}
}
$temp=$value[$field];
if(!in_array($temp,$fields)){
$fields[]=$temp;
}
}
$num=count($con)-1;
foreach ($con as $key => $value) {
foreach ($con_sql as $k => $v) {
if($k==$key&&$key<$num){
$sql.=$value.$v.' end),';
}elseif($k==$key&&$key==$num){
$sql.=$value.$v.' end)';
}
}
}
$str=implode(',',$fields);
$sql.=" where {$field} in({$str})";
$res=M($table_name)->execute($sql);
return $res;
}
//測試
function test(){
$update_array=array();
for ($i=2; $i <7 ; $i++) {
$data=array();
$data['id']=$i;
$data['memeber_type']=2;
$data['memeber_type_state']=1;
$update_array[]=$data;
}
$res=$this->batch_update('yl_member',$update_array,id);
var_mp($res);
}
方法二:
即是循環一條一條的更新記錄。一條記錄update一次,這樣性能很差,也很容易造成阻塞。
那麼能不能一條sql語句實現批量更新呢?mysql並沒有提供直接的方法來實現批量更新,但是可以用點小技巧來實現。
UPDATE categories
SET display_order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END
WHERE id IN (1,2,3)
這句sql的意思是,更新display_order 欄位,如果id=1 則display_order 的值為3,如果id=2 則 display_order 的值為4,如果id=3 則 display_order 的值為5。
即是將條件語句寫在了一起。
這里的where部分不影響代碼的執行,但是會提高sql執行的效率。確保sql語句僅執行需要修改的行數,這里只有3條數據進行更新,而where子句確保只有3行數據執行。
如果更新多個值的話,只需要稍加修改:
UPDATE categories
SET display_order = CASE id
WHEN 1 THEN 3
WHEN 2 THEN 4
WHEN 3 THEN 5
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN 2 THEN 'New Title 2'
WHEN 3 THEN 'New Title 3'
END
WHERE id IN (1,2,3)
實際運用
$display_order = array(
1 => 4,
2 => 1,
3 => 2,
4 => 3,
5 => 9,
6 => 5,
7 => 8,
8 => 9
);
$ids = implode(',', array_keys($display_order));
$sql = "UPDATE categories SET display_order = CASE id ";
foreach ($display_order as $id => $ordinal) {
$sql .= sprintf("WHEN %d THEN %d ", $id, $ordinal);
}
$sql .= "END WHERE id IN ($ids)";
echo $sql;
方法二不建議使用。
方法三:
/*
* @param $saveWhere :想要更新主鍵ID數組
* @param $saveData :想要更新的ID數組所對應的數據
* @param $tableName : 想要更新的表明
* @param $saveWhere : 返回更新成功後的主鍵ID數組
* */
public function saveAll($saveWhere,&$saveData,$tableName){
if($saveWhere==null||$tableName==null)
return false;
//獲取更新的主鍵id名稱
$key = array_keys($saveWhere)[0];
//獲取更新列表的長度
$len = count($saveWhere[$key]);
$flag=true;
$model = isset($model)?$model:M($tableName);
//開啟事務處理機制
$model->startTrans();
//記錄更新失敗ID
$error=[];
for($i=0;$i<$len;$i++){
//預處理sql語句
$isRight=$model->where($key.'='.$saveWhere[$key][$i])->save($saveData[$i]);
if($isRight==0){
//將更新失敗的記錄下來
$error[]=$i;
$flag=false;
}
//$flag=$flag&&$isRight;
}
if($flag ){
//如果都成立就提交
$model->commit();
return $saveWhere;
}elseif(count($error)>0&count($error)<$len){
//先將原先的預處理進行回滾
$model->rollback();
for($i=0;$i<count($error);$i++){
//刪除更新失敗的ID和Data
unset($saveWhere[$key][$error[$i]]);
unset($saveData[$error[$i]]);
}
//重新將數組下標進行排序
$saveWhere[$key]=array_merge($saveWhere[$key]);
$saveData=array_merge($saveData);
//進行第二次遞歸更新
$this->saveAll($saveWhere,$saveData,$tableName);
return $saveWhere;
}
else{
//如果都更新就回滾
$model->rollback();
return false;
}
}
在測試方法中調用:
public function test(){
//要更新的數據表的主鍵數組
$where['ID']=array(70,73,74,80,83);
//ID主鍵數組對應的待更新數據
$save=array(
array('School'=>'DK Univisity01','isExport'=>0),
array('School'=>'DK Univisity02','isExport'=>0),
array('School'=>'DK Univisity03','isExport'=>0),
array('School'=>'DK Univisity04','isExport'=>0),
array('School'=>'','isExport'=>0),
// array('School'=>' Univisity05','isExport'=>0),
);
$f=$this->saveAll($where,$save,'want');
if(count($f['ID'])>0){
//返回更新成功的ID數組
echo "This is success :</br>";
mp($f);
echo 'ok';
}else{
//更新失敗操作
echo "This is failed :</br>";
mp($f);
echo 'error';
}
}

熱點內容
apache和php7 發布:2025-01-24 14:32:26 瀏覽:891
linuxio文件 發布:2025-01-24 13:40:21 瀏覽:437
在excel設密碼如何取消 發布:2025-01-24 13:38:54 瀏覽:482
電腦裝存儲時不能開機 發布:2025-01-24 13:38:52 瀏覽:284
2000人同時在線的小程序需要什麼伺服器 發布:2025-01-24 13:37:17 瀏覽:852
怎麼搭建linux伺服器配置 發布:2025-01-24 13:37:16 瀏覽:112
安卓版什麼時候上線麻將模式 發布:2025-01-24 13:32:48 瀏覽:965
演算法實驗分析 發布:2025-01-24 13:20:25 瀏覽:137
安卓和ios步數哪個准確 發布:2025-01-24 13:12:13 瀏覽:290
怎麼給電腦換配置 發布:2025-01-24 13:04:04 瀏覽:922