PHP 隐藏数组中的文本


PHP Hide text from array

我正在从数组中提取数据,但显示数据的某些部分高于其他部分,我已经设法选择了某些文本来高于其他文本。如果文本与我提供给它的文本匹配,请使用以下代码从数组中隐藏文本吗?

<?php $datas = array_slice($facilities, 0, $leftoshownumber); // First 6 items
                foreach($datas as $data) {
                echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
            }; ?>

这是本节的完整代码

            <div class="checkmark-outer">
            <?php $startnumber = 6; $parkingnumber = 0; $gardennumber = 0; $dishwashernumber = 0; $summerrentnumber = 0; ?>
            <?php if (strpos($facilitiesstring, 'Reduced Summer') !== false) { $summerrentnumber = 1; echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">Reduced Summer Rent Available</div></div>';}; ?>
            <?php if (strpos($facilitiesstring, 'Parking') !== false) {$parkingnumber = 1; echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">Parking Available</div></div>';}; ?>
            <?php if (strpos($facilitiesstring, 'Garden') !== false) {$gardennumber = 1; echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">Garden</div></div>';}; ?>
            <?php if (strpos($facilitiesstring, 'Dishwasher') !== false) {$dishwashernumber = 1; echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">Dishwasher</div></div>';}; ?>
            <?php $totalfixednumber = $parkingnumber + $gardennumber + $dishwashernumber + $summerrentnumber; $leftoshownumber = $startnumber - $totalfixednumber;?>
            <?php $datas = array_slice($facilities, 0, $leftoshownumber); // First 6 items
                foreach($datas as $data) {
                echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
            }; ?>
            <div class="clearfix"></div>
            <div class="read-more-show hide">Show More</div><div class="read-more-content"><?php $datas = array_slice($facilities, 6); // Items after 6
                foreach($datas as $data) {
                echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
            }; ?><div class="clearfix"></div><div class="read-more-hide hide">Show Less</div></span></div>         
        </div>

任何帮助都会很棒!

你的意思是你不想打印整行,当名称与给定变量匹配时?然后我会做:

$iDontWant="bla"
foreach($datas as $data) {
            if($data->Name == $iDontWant) continue; 
            echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
        }; ?>

编辑:

如果您希望多个名称不显示,您可以这样做:

$iDontWant1="bla1"
$iDontWant2="bla2"
$iDontWant3="bla3"
foreach($datas as $data) {
        if($data->Name == $iDontWant1 || $data->Name == $iDontWant2 || $data->Name == $iDontWant3) continue; 
        echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
    }; ?>

(顺便说一下,"||"代表"或"(

所以基本上你正在做的是说,当

要么名称与$iDontWant1的内容相同,即"bla1"

或者名称与$iDontWant2相同,即"bla2"

或者名称与$iDontWant3的内容相同,即"bla3"

继续(不要打印此部分(。

但是,如果您知道"bla1","bla2"...是,做起来更容易

 foreach($datas as $data) {
        if($data->Name == "bla1" || $data->Name == "bla2" || $data->Name == "bla3") continue; 
        echo '<div class="checkmark-33"><div class="fa-stack fa-1x checkmark-icon"><i class="fa fa-circle fa-stack-2x icon-background"></i><i class="fa fa-check fa-stack-1x icon-text"></i></div><div class="checkmark-inner">'. $data->Name .'</div></div>'; 
    }; ?>

您只需直接与字符串进行比较,而不是与包含字符串的变量进行比较。

我希望我能帮助你。

但是如果你想用PHP做更多的事情,我会推荐一个像 https://secure.php.net/manual/en/tutorial.php 这样的教程来真正理解这种语言背后的概念。