作者chang0206 (Eric Chang)
看板PHP
标题[请益] 取出阵列内特定条件的值
时间Mon Jan 13 14:11:40 2014
不好意思,小弟是PHP门外汉
但是最近临危受命,要更改一段程式
这个程式会把一些资料丢进一个阵列内
内容大概长这样
Array (
[id] => 705
[lang] => tw
[photo_id] => 1179
[pnum] => 13100705
[url_buy] =>
[date_unlimit] => 0
[date_start] => 2013/10/03
[date_over] => 2099/12/31
[block] => 0
[sort] => 20131227
[uid] => 1
[time] => 1388112283
[file_path] => upload/product/1310-Thu/1380788118.04.76.thumb.jpg )
Array (
[id] => 720
[lang] => tw
[photo_id] => 1956
[pnum] => 13100720
[url_buy] =>
[date_unlimit] => 0
[date_start] => 2013/10/31
[date_over] => 2099/12/31
[block] => 0
[sort] => 20131031
[uid] => 1
[time] => 1385020920
[file_path] => upload/product/1311-Thu/1385019725.8015.1.thumb.jpg )
这是我用foreach + print_r 去找出来
我现在想要加一个判断式
foreach($result AS $rw){
// idd 是我指定的一个数值
// 我想要做到当阵列内的 id这个key = idd时,取得 photo_id 的值
if ($rw["id"] = $idd)
echo $idd."-".$rw["photo_id"];
else {
echo $idd;
}
}
//print_r ($rw);
}
可是程式执行的结果,永远都只会抓第一笔的photo_id 1179
即使 id 明明是720
不晓得我
--
会当凌绝顶,一览众山小。 —— 杜甫
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.251.177.1
1F:→ itisjoe:if ($rw["id"] == $idd) 里面的 = 要两个 01/13 14:14
2F:→ chang0206:用两个==之後,都会跑到else那边去耶.. 01/13 14:25
3F:→ DongFeng:检查一下{}的位置 01/13 14:28
4F:→ itisjoe:都跑去else就是没有符合条件 把$rw["id"]跟$idd印出来看看 01/13 15:52
5F:→ itisjoe:不过{}没有成对 应该会报错误才对 01/13 15:54
※ 编辑: chang0206 来自: 60.251.177.1 (01/13 16:16)
6F:→ chang0206:我也觉得很奇怪,没有报错啊。後来改用两个判断式去抓 01/13 16:17
7F:→ chang0206:就没有问题了.. 01/13 16:17
8F:推 thitbbeb:直接把code贴上来会比较好debug.... 01/13 18:24
9F:→ thitbbeb:$result & $idd确认一下内容output是什麽? 01/13 18:25
10F:推 alog:1. foreach ( $array as $index => $row ) 2. $row['id'] 01/13 19:08