第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

in_array 值是唯一值。如何?

in_array 值是唯一值。如何?

PHP
慕容708150 2022-10-14 10:03:22
下面系列中的第二個 if 語句不斷返回 true 并打印出即使estimateId不是數(shù)組中的唯一項。我該如何糾正?目標是確保在下面的系列中始終只有一個 if 語句匹配。例如,現(xiàn)在第二個 if 在第三個 if 的情況下返回 true。這不應(yīng)該發(fā)生。https://localhost/data.php?estimateId=1001https://localhost/data.php?estimateId=1001&proposalsFilter=all.<?php     # estimates/active/    if (in_array($_GET["estimatesFilter"], $_GET)) {        print_r('estimatesFilter: ' . $_GET["estimatesFilter"] . ' url parameter(s) was passed.');      print_r("<br>");    }    # This if keeps returning true even if estimateId is not the only item in the array?    # estimates/1001/    if (in_array($_GET["estimateId"], $_GET)) {        print_r('estimateId: ' . $_GET["estimateId"] . ' url parameter(s) was passed.');        print_r("<br>");    }    # estimates/1001/proposals/    if (in_array($_GET["estimateId"], $_GET) && in_array($_GET["proposalsFilter"], $_GET)) {        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'proposalsFilter: ' . $_GET["proposalsFilter"] . ' url parameter(s) was passed.');        print_r("<br>");    }    # estimates/1001/proposals/3001/    if (in_array($_GET["estimateId"], $_GET) && in_array($_GET["proposalId"], $_GET)) {        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'proposalId: ' . $_GET["proposalId"] . ' url parameter(s) was passed.');        print_r("<br>");    }    # estimates/1001/contracts/    if (in_array($_GET["estimateId"], $_GET) && in_array($_GET["contractsFilter"], $_GET)) {        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'contractsFilter: ' . $_GET["contractsFilter"] . ' url parameter(s) was passed.');        print_r("<br>");    }    # estimates/1001/contracts/3001/    if (in_array($_GET["estimateId"], $_GET) && in_array($_GET["contractId"], $_GET)) {        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'contractId: ' . $_GET["contractId"] . ' url parameter(s) was passed.');        print_r("<br>");    }
查看完整描述

2 回答

?
絕地無雙

TA貢獻1946條經(jīng)驗 獲得超4個贊

# 即使estimateId 不是數(shù)組中的唯一項,這個if 仍然返回true?
# 估計/1001/

要解決您的問題,您可以檢查該值是否是唯一

if(in_array($_GET["estimateId"], $_GET))

變成:

if(\count($_GET) === 1 && \in_array($_GET["estimateId"], $_GET) ){


  /***

    this will only trigger if `$_GET["estimateId"]` is in the 

    array $_GET and is the only value in the array.

   ***/

 }

它檢查值并檢查count數(shù)組中的值。因為您正在尋找這個值,所以數(shù)組計數(shù)應(yīng)該只有 1。

https://localhost/data.php?estimateId=1001

上面返回 true 因為 $_GET 只包含一個值。

https://localhost/data.php?estimateId=1001&proposalsFilter=all

上面返回 false 因為 $_GET 數(shù)組包含 2 個值。


查看完整回答
反對 回復(fù) 2022-10-14
?
千萬里不及你

TA貢獻1784條經(jīng)驗 獲得超9個贊

“目標是確保在下面的系列中始終只有一個 if 語句匹配?!?/p>


只需使用 elseif 而不是 if then。


<?php 


    # estimates/active/

    if (in_array($_GET["estimatesFilter"], $_GET)) {


        print_r('estimatesFilter: ' . $_GET["estimatesFilter"] . ' url parameter(s) was passed.');

      print_r("<br>");


    }


    # This if keeps returning true even if estimateId is not the only item in the array?

    # estimates/1001/

    elseif (in_array($_GET["estimateId"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/proposals/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["proposalsFilter"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'proposalsFilter: ' . $_GET["proposalsFilter"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/proposals/3001/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["proposalId"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'proposalId: ' . $_GET["proposalId"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/contracts/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["contractsFilter"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'contractsFilter: ' . $_GET["contractsFilter"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/contracts/3001/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["contractId"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'contractId: ' . $_GET["contractId"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/invoices/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["invoicesFilter"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'invoicesFilter: ' . $_GET["invoicesFilter"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


    # estimates/1001/invoices/4001/

    elseif (in_array($_GET["estimateId"], $_GET) && in_array($_GET["invoiceId"], $_GET)) {


        print_r('estimateId: ' . $_GET["estimateId"] . ' & ' . 'invoiceId: ' . $_GET["invoiceId"] . ' url parameter(s) was passed.');

        print_r("<br>");


    }


 ?>



查看完整回答
反對 回復(fù) 2022-10-14
  • 2 回答
  • 0 關(guān)注
  • 108 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號