当前位置:首页 » 编程语言 » php逻辑题

php逻辑题

发布时间: 2023-06-15 16:43:41

php的一个程序逻辑问题

function show_all_class($f_id = 0){
global $arr,$k;
for($i=0;$i<count($arr);++$i){
if($arr[$i][1]==$f_id)
{$str=leadStr($k++);
这儿使用$i之前+1 所以 不会出现当$i=0时,$arr[0][1]==$f_id的情况 而是$arr[1][1]==$f_id也就是数据库查出的 row[f_id]==0 就执行以下代码 不过$k=0运行还是后 我们看下面 有个函数调用自身的过程 show_all_class($arr[$i][0]); 也就是show_all_class($arr[1][0]); 不管你$k有没被调用 运行后$k==0 这样leadstr方法中第一个传入去的$k应该是0 而$k被用后下面函数show_all_class(); 会递加1 我不知道你数据库传进的数据是什么 你传过来的值带进去 按这逻辑运行下 理解下函数的递归 你就会明白了 不过这代码写得太不专业了 很乱 而且很不标准

⑵ php中的逻辑判断问题

php里有2个等于比较符,== 和 ===
对于前面的等号,会判断并转化为相同的类型后再进行比较,
比如你的代码: 0 == "a",会先把字符串a转化为数值,因为字符串里没有数字,所以"a"转换后就是0, 0==0当然是true了
同理,"1" == "01" 会自动判断有数字,然后把前后2个字符串都转化为数字进行比较,所以也是true。
同样的问题还有: 0 == ""; 0 == false; 这些都是true
而 === 就不会,该比较符必须类型相同,类型不同,直接返回false,
比如 0 === "0" 会返回false

在实际工作中,建议避免使用 ==,统一使用 ===

⑶ 关于PHP的逻辑运算

呵呵~~正如前面这位大哥说的~~
$c的值已经是bool型的了,所以在后面与$d比较的时候,php会先将$d的值转换为bool型的,6也就是true了,所以$c和$d相等了~~

⑷ php实现逻辑题

那第 1 头是隔过去的话就永远是第 1 头活着,

从第 1 头杀的话就是第 994 头活着

$array=array();
for($i=1;$i<=1000;$i++){
$array[]=$i;
}

$a=digui($array);

echo$a[0];

functiondigui($arr){
if(count($arr)>1){
for($x=0;$x<=count($arr)+2;$x+=2){
unset($arr[$x]);
}
$arr=array_merge($arr);
$arr=digui($arr);
}
return$arr;
}
热点内容
拍照上传器 发布:2025-02-12 17:34:29 浏览:651
androidweb框架 发布:2025-02-12 17:32:45 浏览:75
安卓编程贺卡 发布:2025-02-12 17:32:44 浏览:837
php获取数据库的字段 发布:2025-02-12 17:29:02 浏览:765
服务器地址消失 发布:2025-02-12 17:23:36 浏览:950
后台执行php脚本 发布:2025-02-12 17:21:45 浏览:470
spring编程式事务 发布:2025-02-12 17:16:55 浏览:397
nginx禁止ip访问 发布:2025-02-12 17:15:14 浏览:273
外网访问端口 发布:2025-02-12 17:09:09 浏览:541
威兰达四驱豪华版都有哪些配置 发布:2025-02-12 16:54:34 浏览:120