朋友可能你要的是 PHPExcel的自增吧?
創(chuàng)新互聯(lián)公司基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺(tái)為眾多戶提供成都天府聯(lián)通服務(wù)器托管 四川大帶寬租用 成都機(jī)柜租用 成都服務(wù)器租用。
可以選擇在循環(huán)外賦初值,然后在循環(huán)內(nèi)進(jìn)行自增,并且可循環(huán)標(biāo)題與數(shù)據(jù)
標(biāo)題為:
$i = 'A';
foreach ($col_name as $val) {
$col_title = $i . '1'; //每次給這個(gè)值進(jìn)行更改 即 第一次A1,第二次B1,第三次C1
//執(zhí)行相應(yīng)操作
$i++;
}
上面是標(biāo)題頭的循環(huán),內(nèi)容部分的循環(huán)一樣類似的語句就可以了
1、首先說編號(hào) : 編號(hào)的問題需要沒有重復(fù)對(duì)吧?如果你使用了數(shù)據(jù)庫(kù)的話,就要先從數(shù)據(jù)庫(kù)中讀出最大的編號(hào),才能開始寫下一個(gè)項(xiàng)目編號(hào),你可以單獨(dú)建立一個(gè)項(xiàng)目編號(hào)字段,也可以不建,取出來之后用用字符串函數(shù)截取,總之,這是一個(gè)不容易做到的問題。
至于下個(gè)月的第一單,是否能夠再重新開始,也是必須在這里完成的。
你可以在讀取數(shù)據(jù)庫(kù)內(nèi)容的時(shí)候,加入日期查詢條件,如果查詢不到當(dāng)月的記錄,那么這個(gè)項(xiàng)目編號(hào)就再?gòu)?1開始。
說得比較抽象,這只是原理,因?yàn)槟氵B程序都沒有,現(xiàn)在就算有人回答你,也只能是這樣理論性地告訴你,不可能告訴你代碼。
2、日期中的月份: 這個(gè)特別簡(jiǎn)單只要這樣一個(gè)函數(shù)就搞定:date('m');
3、前面的S就不解釋了。
最后,就是連接: 設(shè):$result是你最后想得到的值,$munber是項(xiàng)目編號(hào),$da是月份
那么:$result = 'S'.$da.$number; //這就是你想要得到的結(jié)果。
{section name=a loop=$arr start=1}
{$smarty.section.a.index}
{/section}
{$smarty.section.customer.index} 這個(gè)值從1開始,循環(huán)一次+1
如果是固定以10開頭,那么可以不要修改數(shù)據(jù)庫(kù)的自增ID,新增一個(gè)編號(hào)ID字段,這個(gè)編號(hào)ID的格式是:'10'(你定義的編號(hào)格式)+自增ID,這樣你就能隨意變換了。每次插入一條數(shù)據(jù)成功后,你是可以獲取到當(dāng)前插入的ID的,取到這個(gè)ID,然后組合重新更新數(shù)據(jù)庫(kù)即可。
希望對(duì)你有所幫助~
提供一個(gè)思路供參考:
在項(xiàng)目表中添加一個(gè)字段,如current_no,整型.默認(rèn)值0,你在生成編號(hào)前,
先執(zhí)行一個(gè)查詢,找出今天最大編號(hào)如
select max(current_no) as current_no from t_items where item_no(帶日期的項(xiàng)目編號(hào)字段) like '20100513%';
如果沒有返回紀(jì)錄,則編號(hào)為0,否則編號(hào)為 current_no+1
保存的時(shí)候
insert into t_items(item_no,current_no) values('20100513xx',xx);
也就是說同時(shí)保存當(dāng)前的編號(hào).
日期可以用
$today = date("Ymd",time());來獲取.