تالار گفتمان nCIS.ir

نسخه‌ی کامل: روش ساخت فایل JSON
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام
در php براحتی و بوسیله mysqli_fetch_assoc میتوان اطلاعات حاصل از کوئری بانک اطلاعاتی را به فایل JSON انتقال داد ولی در فریمورک yii انتقال صورت نمیگیرد شاید بدلیل اینکه از mysqli_fetch_assoc  در مدل yii استفاده نشده است لطفا راهنمایی بفرمائید
با تشکر
کد در php
 
    $emparray = array();
   while($row =mysqli_fetch_assoc($result))
   {
       $emparray[] = $row;
   }
   $fp = fopen('results.json', 'w');
   fwrite($fp, json_encode($emparray));
   fclose($fp); 

کد در yii
    $emparray = array();
   foreach (Region::model()->findAll('countryId=99') as $row)
   {
       $emparray[] = $row;
   }
$fp = fopen('results.json', 'w');
fwrite($fp, json_encode($emparray));
fclose($fp);
خروجی ActiveRecord یک شئ هست نه یک آرایه. شما باید فیلدها رو استخراج و به آرایه اضافه کنید.
$result = array();
foreach(Region::model()->findAll('countryId=99') as $region) {
    $result[] = $region->attributes;
    /*
    $row = array();
    foreach($region->attributes as $key => $value) {
        $row[$key] = $value;
    }
    $result[] = $row;
    */
}
$fp = fopen('results.json', 'w');
fwrite($fp, json_encode($result));
fclose($fp);