繁体   English   中英

如何在CodeIgniter的视图中使用这个看似简单的循环?

[英]How do I use this seemingly simple loop in CodeIgniter's view?

在页脚之前的视图中 ,我想加载三个JavaScript文件。 因此,控制器设置了三个变量。 例如,$ js_1 =“ bootstrap.js”,$ js_2 =“和$ js_3 =” tinymce.js“,它们可以为空,也可以不为空。 逻辑是,仅当变量不为空时才应回显。 我也想使用三元if运算符

这是我能尝试的最好的方法。

for ($i = 1; $i <= 3; $i++)
{
    echo (!empty ('$js_' . $i)) ? get_jscript('$js_' . $i) : NULL;
}

函数get_jscript()只是返回HTML脚本src。

function get_jscript($js) 
{
    return '<script type="text/javascript" src="' . $js . '"></script> ';
}

请注意,我打算问这个问题主要是为了学习正确的PHP语法,而不仅仅是在视图中加载JS。

如果可以创建这样的数组->

$javascript = array('js_1' => "bootstrap.js", 'js_2' => '', 'js_3' = "tinymce.js");

然后在您看来,您只需要调用一个方法

loop_javascript($javascript);

最好在codeigniter帮助程序中创建一个函数,然后在控制器的函数中调用该帮助程序(检查如何在codeingiter中使用帮助程序) https://ellislab.com/codeigniter/user-guide/general/helpers.html- >

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

if ( ! function_exists('loop_javascript'))
{
    function loop_javascript($jscript_array)
    {
        foreach($jscript_array as $key =>$value){
            if($value != ''){
                echo '<script type="text/javascript" src="' . $value. '"></script>';
            }
        }
    }   
}

有一些有关如何使用变量的信息。

for ($i = 1; $i <= 3; $i++)
{
    echo (!empty (${'js_'.$i})) ? get_jscript(${'js_'.$i}) : NULL;
}
for ($i = 1; $i <= 3; $i++)
{
    if(!empty($js.'_'.$i)){ echo get_jscript($js.'_'.$i); echo "</br>";}
}

function get_jscript($js) 
{
    return '<script type="text/javascript" src="' . $js . '"></script> ';
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM