真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

使用PHP怎么實(shí)現(xiàn)一個(gè)權(quán)重算法-創(chuàng)新互聯(lián)

本篇文章為大家展示了使用PHP怎么實(shí)現(xiàn)一個(gè)權(quán)重算法,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)、網(wǎng)站重做改版、商都網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5建站、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為商都等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

php有什么用

php是一個(gè)嵌套的縮寫(xiě)名稱(chēng),是英文超級(jí)文本預(yù)處理語(yǔ)言,它的語(yǔ)法混合了C、Java、Perl以及php自創(chuàng)新的語(yǔ)法,主要用來(lái)做網(wǎng)站開(kāi)發(fā),許多小型網(wǎng)站都用php開(kāi)發(fā),因?yàn)閜hp是開(kāi)源的,從而使得php經(jīng)久不衰。

假設(shè)有數(shù)據(jù):


$data = array (
 array (
 'id' => 1,
 'name' => '張三',
 'weight' => 5
 ),
 array (
 'id' => 2,
 'name' => '王五',
 'weight' => 10
 ),
 array (
 'id' => 3,
 'name' => '李四',
 'weight' => 15
 ),
);

要隨機(jī)取出其中一條,并且不是完全隨機(jī),而是根據(jù)其中weight的數(shù)值,按照數(shù)值越大,幾率越高的規(guī)律取出。

以前寫(xiě)過(guò)一些權(quán)重算法,可是都不完美,要么數(shù)據(jù)量有限制,要么weight之和必須等于一個(gè)指定的數(shù)等等,都不完善。

今天突發(fā)奇想,寫(xiě)了一套完美的權(quán)重算法,該算法有如下優(yōu)勢(shì):

1. 支持無(wú)限多個(gè)數(shù)據(jù)

2. weight值之和任意

3. 不存在兩個(gè)weight值一樣時(shí)無(wú)法平均分配的bug

算法如下:

$data = array (
 array (
 'id' => 1,
 'name' => '張三',
 'weight' => 5
 ),
 array (
 'id' => 2,
 'name' => '王五',
 'weight' => 10
 ),
 array (
 'id' => 3,
 'name' => '李四',
 'weight' => 15
 ),
);
$weight = 0;
$tempdata = array ();
foreach ($data as $one) {
 $weight += $one['weight'];
 for ($i = 0; $i < $one['weight']; $i++) {
 $tempdata[] = $one;
 }
}
$use = rand(0, $weight -1);
$one = $tempdata[$use];
var_dump($one);

運(yùn)行結(jié)果:

array(3) {
  ["id"]=>
  int(2)
  ["name"]=>
  string(4) "王五"
  ["weight"]=>
  int(10)
}

上述內(nèi)容就是使用PHP怎么實(shí)現(xiàn)一個(gè)權(quán)重算法,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前名稱(chēng):使用PHP怎么實(shí)現(xiàn)一個(gè)權(quán)重算法-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://weahome.cn/article/doseog.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部