|
|
|
ต้องการนับจำนวน ID ที่ได้จากการวนloopแล้ว echo ออกมาโชว์ต้องทำอย่างไรคะช่วยแนะนำด้วยคะ |
|
|
|
|
|
|
|
ถ่าอย่างง่ายๆใช้แบบนี้ก็ได้ครับ
Code (PHP)
$i = 0;
foreach($allLikeInComment->data as $userID){
$i++;
echo "--- ".sprintf('%0.0f', $userID->user_id)."<br>";
}
echo $i;
|
ประวัติการแก้ไข 2013-06-06 15:42:55
|
|
|
|
Date :
2013-06-06 15:42:28 |
By :
zinlucifer |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าต้องหารหาค่า$iที่มีค่ามากสุดสามลำดับอ่ะคะ
|
|
|
|
|
Date :
2013-06-06 15:51:57 |
By :
Ryo |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องการหาค่า ID ที่มากที่สุดหรือเปล่าครับ เพราะ $i ค่าสุดท้ายมันจะมากที่สุดอยู่แล้ว
ถ้าต้องการหาค่า ID ที่มากที่ผมไม่แน่ใจว่าออกแบบ database ไว้ยังไงแต่ใช้อัลกอริทึ่ม ประมาณนี้ก็ได้ครับ
Code (PHP)
$i = 0;
$j = 0;
foreach($allLikeInComment->data as $userID){
$i++;
if($userID->user_id>$j){
$j = $userID->user_id;
}
echo "--- ".sprintf('%0.0f', $userID->user_id)."<br>";
}
echo $i."<br>";
echo $j;
|
|
|
|
|
Date :
2013-06-06 16:59:05 |
By :
zinlucifer |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 4 เขียนโดย : {Cyberman} เมื่อวันที่ 2013-06-06 17:13:33
มันมัน sort โดยฟังชั่นปรกติไม่ได้ เพราะมันอยู่ในรูปแบบ object array
มีหลายวิธีทำครับ ถ้าจะให้ย์ดหยุ่นก็ต้อง Convert ให้เป็น array ก่อน แล้วเขียนฟังก์ชั่นเพื่อสามารถเรียใช้สำหรับข้อมูลอื่นได้
ถ้าเอาแบบเจาะจงก็ ประมาณนี้ ผมจำลองข้อมูลขึันมาให้
Code (PHP)
for ($i = 0; $i < 10; $i++) {
$data['data'][]['user_id'] = rand(10, 100);
}
$allLikeInComment= json_decode(json_encode($data));
var_dump($allLikeInComment);
//----------------------------------------------
function max_obj($array) {
foreach ($array->data as $key => $value) {
$new_arr[$key] = $value->user_id;
}
for ($i = 0; $i < 3; $i++) {
$max = array_keys($new_arr, max($new_arr)); // key of array
$max_val[] = $new_arr[$max[0]]; unset($new_arr[$max[0]]);
}
return $max_val;
}
echo 'มีทั้งหมด ='.count($allLikeInComment->data) . ' ID <br/>';
$max3 = max_obj($allLikeInComment);
for ($i = 0; $i < 3; $i++)
echo 'อันดับที่ '.($i+1).' = ' . $max3[$i] . '<br/>';
ถ้าให้ง่าย sort มาตั้งแต่ QUERY จะดีกว่าครับ
|
ประวัติการแก้ไข 2013-06-07 05:42:44 2013-06-07 05:43:28
|
|
|
|
Date :
2013-06-07 05:41:35 |
By :
t-monroe |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|