Php in_数组语句的问题

Php in_数组语句的问题,php,arrays,Php,Arrays,我想在产品页面上只显示特定产品和特定国家/地区的特定URL链接。首先,我检索国家的IP,然后检查产品ID。如果产品ID在数组中,如果用户来自加拿大,我将显示链接1,如果用户来自美国,则显示链接2。问题是它没有显示任何东西。在包含在_数组中的if语句中没有发生任何事情,也不确定我做错了什么 <?php if ($currentCountry =="CA" || $currentCountry =="US") { $p_id = $_product->getId();

我想在产品页面上只显示特定产品和特定国家/地区的特定URL链接。首先,我检索国家的IP,然后检查产品ID。如果产品ID在数组中,如果用户来自加拿大,我将显示链接1,如果用户来自美国,则显示链接2。问题是它没有显示任何东西。在包含在_数组中的if语句中没有发生任何事情,也不确定我做错了什么

<?php
if ($currentCountry =="CA" || $currentCountry =="US") 
{
    $p_id = $_product->getId();   
    $include_id = array(546, 125,135);
    ?>
    <style>
    .choose-local {
        display: flex;
    }
    .data-section {
        min-width: 33%;
    }
    .choose-local .data-section span {
        float: left;
    }
    </style>
    <?php
    if (in_array($p_id,$include_id, TRUE)) 
    {

        ?>
        <div class='choose-local'>
            <div class='data-section'>
                <span style="">Available Locally from :</span>
            </div>
            <div class="data-section">
                <?php 
                    if ($currentCountry =="CA") 
                    { 
                        ?>
                        <span>Link 1<a href='https://www.link1.com'>[Order from here]</a></span>
                        <?php
                    }

                    if ($currentCountry =="US") 
                    { 
                        ?>        
                        <span>Link 2<a href='https://www.link2.com'>[Order from here]</a></span>
                        <?php 
                    } 
                ?>      
            </div>
        </div>
    <?php 
    }
}
?>

检查您的$p_id是字符串还是整数

.选择本地{ 显示器:flex; } .数据科{ 最小宽度:33%; } .选择本地.数据段跨度{ 浮动:左; } 可从以下地点获得: 链接1 链接2
$p\u id=$\u product->getId的结果是什么;如果是字符串,则强制转换为整数如果您使用var_dump$p_id,您会得到什么?它是一根绳子吗?如果是,请尝试从in_数组中删除第三个参数。bool是一种严格的模式,它检查typecheck这个变量$p\u id=$\u product->getId;这可能是字符串类型int,在in_数组$p_id,$include_id中,严格检查类型。试试这个$p\u id=intval$\u product->getId;将工作$p_id=intval$_product->getId;作品感谢很多人为我指出了正确的方向。感谢昨天发表评论的用户已经提出了建议。它返回的是字符串而不是整数。这就是它不起作用的原因。