当前位置:首页 » 编程语言 » 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;
}
热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:710
制作脚本网站 发布:2025-10-20 08:17:34 浏览:972
python中的init方法 发布:2025-10-20 08:17:33 浏览:681
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:833
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:740
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1080
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:311
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:191
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:878
python股票数据获取 发布:2025-10-20 07:39:44 浏览:835