亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

PHP實例-國際標準書號ISBN碼校驗函數

2020-03-24 16:18:34
字體:
來源:轉載
供稿:網友
最近在編寫一個圖書管理程序的時候,需要校驗圖書ISBN碼正確性,查了一些資料,了解了圖書ISBN碼的構成,詳細資料可以參考:國際標準書號 維基百科,下面還是簡述一下什么是ISBN碼:國際標準書號(International Standard Book Number,ISBN;擬發音is-ben),是國際通用的圖書或獨立的出版物(除定期出版的期刊)代碼。出版社可以通過國際標準書號清晰的辨認所有非期刊書籍。一個國際標準書號只有一個或一份相應的出版物與之對應。新版本如果在原來舊版的基礎上沒有內容上太大的變動,在出版時也不會得到新的國際標準書號碼。當平裝本改為精裝本出版時,原來相應的國際標準書號號碼也應當收回。平常我們能夠見到的ISBN碼有10位和13位兩種,其中10位的ISBN自2007年1月起已經停止使用,目前新出版的圖書ISBN碼都是13位??紤]到一個嚴謹的圖書管理程序要考慮到多方面的問題,因為10位ISBN碼的圖書還是有巨大的存世量的,所以要校驗圖書ISBN碼的正確性,就必須同時考慮10位和13位的情況。從維基百科可以了解到ISBN碼最后一位是校驗碼,其實要想校驗ISBN碼的正確,就是通過計算ISBN的校驗碼,看是否與最后一位吻合。這里所說的校驗也只是校驗ISBN在構成上是否合法,而不會校驗是否為已發行圖書的ISBN。下面是維基百科提供的ISBN碼校驗算法:校驗碼的計算方法(10碼)假設某國際標準書號號碼前9位是:7-309-04547 計算加權和S:S = 7 10+3 9+0 8+9 7+0 6+4 5+5 4+4 3+7 2 = 226 計算S 11的余數M:M = 226 mod 11 = 6 計算11 M 的差N:N = 11 ? 6 = 5 如果N = 10,校驗碼是字母 X 如果N = 11,校驗碼是數字 0 如果N為其他數字,校驗碼是數字N 所以,本書的校驗碼是5;如果用戶提供的ISBN碼是7-309-04547-6,那么校驗失敗校驗碼的計算方法(13碼)假設某國際標準書號號碼前12位是:978-986-181-728 計算加權和S:S = (9 1)+(7 3)+(8 1)+(9 3)+(8 1)+(6 3)+(1 1)+(8 3)+(1 1)+(7 3)+(2 1)+(8 3) = 164 計算S 10的余數M:M = 164 mod 10 = 4 計算10 M 的差N:N = 10 ? 4 = 6 如果N = 10,校驗碼是數字 0 如果N為其他數字,校驗碼是數字N 所以,本書的校驗碼是6。完整的國際標準書號號碼為 ISBN 978-986-181-728-6好了,背景知識介紹到這,下面我寫的ISBN碼校驗函數(php版),需要的話可以直接使用:
function isbn_sum($isbn, $len)
{
/*
* 該函數用于計算ISBN加權和
* 參數說明:
* $isbn : isbn碼
* $len : isbn碼長度
*/
$sum = 0;
if ($len == 10)
{
for ($i = 0; $i $len-1; $i++)
{
$sum = $sum + (int)$isbn[$i] * ($len - $i);
}
}
elseif ($len == 13)
{
for ($i = 0; $i $len-1; $i++)
{
if ($i % 2 == 0)
$sum = $sum + (int)$isbn[$i];
else
$sum = $sum + (int)$isbn[$i] * 3;
}
}
return $sum;
}
function isbn_compute($isbn, $len)
{
/*
* 該函數用于計算ISBN末位校驗碼
* 參數說明:
* $isbn : isbn碼
* $len : isbn碼長度
*/
if ($len == 10)
{
$digit = 11 - isbn_sum($isbn, $len) % 11; if ($digit == 10)
$rc = 'X';
else if ($digit == 11)
$rc = '0';
else
$rc = (string)$digit;
}
else if($len == 13)
{
$digit = 10 - isbn_sum($isbn, $len) % 10; if ($digit == 10)
$rc = '0';
else
$rc = (string)$digit;
}
return $rc;
}
function is_isbn($isbn)
{
/*
* 該函數用于判斷是否為ISBN號
* 參數說明:
* $isbn : isbn碼
*/
$len = strlen($isbn);
if ($len!=10 $len!=13)
return 0;
$rc = isbn_compute($isbn, $len);
if ($isbn[$len-1] != $rc) /* ISBN尾數與計算出來的校驗碼不符 */
return 0;
else
return 1;
}html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久99精品久久久久久青青91| 91精品国产高清久久久久久91| 日韩电影大全免费观看2023年上| 欧美国产日韩一区| 精品日韩中文字幕| 欧美裸体xxxx| 精品亚洲一区二区三区四区五区| 国产精品爽爽ⅴa在线观看| 成人看片人aa| 国产精品视频专区| 亚洲精品videossex少妇| 欧美中文字幕在线| 欧美极品在线视频| 少妇高潮久久77777| 精品亚洲一区二区三区| 久久久久久久久电影| 国产成人精品电影久久久| 欧美一级片久久久久久久| 97视频在线观看视频免费视频| 精品久久久久久电影| 在线日韩第一页| www.久久久久久.com| 久久久久久国产精品| 欧美日韩国产中文精品字幕自在自线| 久久99精品国产99久久6尤物| 色偷偷91综合久久噜噜| 欧美日本在线视频中文字字幕| 国内精品伊人久久| 亚洲专区国产精品| 日韩久久免费电影| 欧美成人激情图片网| 亚洲国产精品久久久| 日韩欧美999| 伊人久久综合97精品| 亚洲美女www午夜| 欧美亚洲另类制服自拍| 成人黄色大片在线免费观看| 日韩精品视频免费在线观看| 91美女高潮出水| 秋霞午夜一区二区| 国产精品免费网站| 91色琪琪电影亚洲精品久久| 亚洲女人初尝黑人巨大| 日韩av免费在线播放| 国产精品久久久久av免费| 欧美性猛交xxxx免费看久久久| 久久亚洲一区二区三区四区五区高| 欧美www视频在线观看| 亚洲免费视频在线观看| 日韩美女中文字幕| 欧美中文字幕视频| 中文字幕在线日韩| 日韩在线观看免费全集电视剧网站| 7m精品福利视频导航| 精品动漫一区二区| 久久在线精品视频| 久久久久久久久久婷婷| 久久精品中文字幕一区| 最好看的2019的中文字幕视频| 亚洲第一区在线| 91精品久久久久久久久久久| 欧美巨猛xxxx猛交黑人97人| 色偷偷噜噜噜亚洲男人| 亚洲国产一区二区三区在线观看| 国产亚洲欧洲在线| 国产精品aaa| 亚洲人成网在线播放| 一区二区三区美女xx视频| 亚洲国产中文字幕久久网| 亚洲精品国产品国语在线| 日本精品久久久久影院| 亚洲欧美制服中文字幕| 91精品在线观| 国产精品亚洲综合天堂夜夜| 色偷偷噜噜噜亚洲男人| 亚洲free嫩bbb| xxav国产精品美女主播| 91av福利视频| 欧美日韩中文字幕在线视频| 国产精品无av码在线观看| 欧美激情成人在线视频| 日韩免费观看av| 成人妇女淫片aaaa视频| 成人免费视频网址| 一区二区av在线| 国内成人精品视频| 91精品视频在线播放| 一本色道久久88综合亚洲精品ⅰ| 亚洲欧美一区二区三区四区| 国产精品美女免费| 在线观看久久久久久| 久久亚洲私人国产精品va| 中文字幕日韩av| 国产精品一区二区av影院萌芽| 亚洲精品久久视频| 91久久在线播放| 中文字幕亚洲欧美日韩在线不卡| 日韩免费视频在线观看| 国产精品天天狠天天看| 一区二区国产精品视频| 欧美一区二粉嫩精品国产一线天| 国产精品成人国产乱一区| 国产精品一区av| 国产女人精品视频| 91在线免费网站| 亚洲va电影大全| xx视频.9999.com| 日韩一区二区三区在线播放| 国产精品久久一区| 亚洲欧美制服丝袜| 91精品国产色综合久久不卡98| 久久精品国产免费观看| 色综合久综合久久综合久鬼88| 精品亚洲夜色av98在线观看| 亚洲石原莉奈一区二区在线观看| 欧美夫妻性生活视频| 92版电视剧仙鹤神针在线观看| 久久99亚洲精品| 久久99国产精品自在自在app| 国产精品色悠悠| 久久久国产精品免费| 欧美激情欧美激情在线五月| 欧美另类第一页| 国产精品一区二区3区| 98精品在线视频| 8090理伦午夜在线电影| 中文字幕精品网| 亚洲欧美在线一区二区| 国产精品欧美日韩久久| 欧美性猛交丰臀xxxxx网站| 久久精品成人动漫| 久久精品免费电影| 97视频在线播放| 日韩av网站导航| 亚洲精品日韩欧美| 97视频在线观看免费高清完整版在线观看| 97色伦亚洲国产| 日韩视频中文字幕| 欧美亚洲另类在线| 欧美电影免费观看电视剧大全| 午夜精品久久久久久久久久久久久| 456国产精品| 日韩男女性生活视频| 中文字幕一区二区三区电影| 夜夜嗨av一区二区三区四区| 欧美日韩国产va另类| 中文字幕一区日韩电影| 久久99精品国产99久久6尤物| 亚洲精品国精品久久99热| 亚洲午夜小视频| 国产欧美日韩精品专区| 亚洲free性xxxx护士白浆| 久久天天躁日日躁| 成人在线观看视频网站| 国产一区二区三区三区在线观看| 国产成人极品视频| 精品激情国产视频| 日韩国产精品亚洲а∨天堂免| 午夜免费久久久久| 中文字幕最新精品| 不卡在线观看电视剧完整版| 国产日本欧美一区二区三区在线| 色偷偷av一区二区三区乱| 日韩高清电影免费观看完整版|