提问人:Geraud Greyling 提问时间:11/19/2022 最后编辑:Geraud Greyling 更新时间:11/19/2022 访问量:19
我怎样才能使这个程序正确地格式化字符串?PHP - 嵌套循环
How can I make this programme format the string properly? PHP - Nested For Loop
问:
<?php
$list = ['a', 'b', 'c'];
$count = [1, 3, 5];
function stringFormatter($c, $i) {
return "Char is $c & Int is $i";
}
for ($i = 0; i < $list; $i++) {
for ($j = 0; $j < $count; $j++) {
$string = stringFormatter($list[$i], $count[$j]);
print $string;
}
}
?>
这是我重写的示例代码,用于演示我在程序中遇到的一个问题,在该程序中,我想分配一个格式化的字符串,具有 char 和 int 的正确组合,以便能够使用所述字符串执行 SQL 语句。理想的情况是获取一个字符串,该字符串在各自列表中的该位置同时具有 char 和 int 的组合。例如,“Char is a & Int is 1”。它目前没有编译,当我将其插入“在线PHP沙盒”时,我收到错误消息:“内部服务器错误[500]。欢迎任何关于我如何让它工作的建议,甚至是其他建议!提前致谢!
答:
1赞
barryA
11/19/2022
#1
for ($i = 0; i < $list; $i++) { for ($j = 0; $j < $count; $j++) {
这里有一些语法错误 - 注意缺少的 $(查看外部循环内的 i)。您可能是指使用内置计数函数的 $i<count($list)。同样,在内部循环中,您使用 $j<$count 引用 $count 数组 - 您的意思是 $j<count($count) 还是使用外部数组作为内部元素的索引,即 $j < $count[$i]。
更一般地说,php 中内置了一组函数,可以更好地处理将值传递到 mysql(等)中 - 您可能应该考虑使用这些函数 - 使用 php 和 mysqli 搜索“sanitising”。
评论
0赞
Geraud Greyling
11/19/2022
除了令人尴尬地省略 $ 符号之外,将 count() 函数添加到两个 for 循环中都给了我预期的结果!谢谢!
评论