課程
/后端開發
/PHP
/手把手教你實現電商網站后臺開發
老師,你之前不是已經對長度做了控制了嗎?substr($chars,0,$length) ?但是之后你寫的FOR的作用是什么呢?
2014-10-15
源自:手把手教你實現電商網站后臺開發 2-1
正在回答
代碼粘貼出來看看
^-^...
function?buildRandomString($type?=?1,?$length?=?4){ ????if?($type?==?1)?{ ????????$chars?=?join('',?range(0,?9)); ????}elseif?($type?==?2)?{ ????????$chars?=?join(array_merge(range('a',?'z'),?range('A',?'Z'))); ????}elseif?($type?==?3)?{ ????????$chars?=?join(array_merge(range('a',?'z'),?range('A',?'Z'),?range(0,?9))); ????} ????if?($length?>?strlen($chars)?{ ????????exit('驗證碼設定的長度過長'); ????} ????$chars?=?str_shuffle($chars); ????return?substr($chars,?0,?$length); }
我有個地方寫錯了,今天改過來.
打錯了,例子是“養了頭200斤的豬,你要從中割300斤肉”
我猜你是說string.func.php里的return substr($chars, 0, $length); 是吧?
function?buildRandomString($type?=?1,?$length?=?4){ ????if?($type?==?1)?{ ????????$chars?=?join('',?range(0,?9)); ????}elseif?($type?==?2)?{ ????????$chars?=?join(array_merge(range('a',?'z'),?range('A',?'Z'))); ????}elseif?($type?==?3)?{ ????????$chars?=?join(array_merge(range('a',?'z'),?range('A',?'Z'),?range(0,?9))); ????} ????if?($length?>?$chars)?{ ????????exit('驗證碼設定的長度過長'); ????} ????$chars?=?str_shuffle($chars); ????return?substr($chars,?0,?$length); }
調用buildRandomString()函數時,如果你不傳值,$type默認是1, $length默認是 4。如果你傳$length=80,也就是你要生成一個80位的驗證碼,我們看看行不行?
$chars?=?join(array_merge(range('a',?'z'),?range('A',?'Z'),?range(0,?9)));
你們的靜態頁面在哪里下載的???
for循環里面是每次在畫布上畫一個字符
舉報
手把手教你用PHP搭建電子商務平臺,由淺入深教你搭建電商系統
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2014-10-15
代碼粘貼出來看看
^-^...
2015-08-22
我有個地方寫錯了,今天改過來.
2015-08-21
打錯了,例子是“養了頭200斤的豬,你要從中割300斤肉”
2015-08-21
我猜你是說string.func.php里的return substr($chars, 0, $length); 是吧?
調用buildRandomString()函數時,如果你不傳值,$type默認是1, $length默認是 4。如果你傳$length=80,也就是你要生成一個80位的驗證碼,我們看看行不行?
此時,$chars生成的是一個26+26+10=62位的字符串(這是這三種$type中最長的一個了)。你想從這62位的字符串中截取前80位?這是不可能的。就像是你養了頭200斤的豬,你要從中割200斤肉的肉食一個道理的。2014-10-18
你們的靜態頁面在哪里下載的???
2014-10-15
for循環里面是每次在畫布上畫一個字符