Mahdi
2 سال پیش توسط Mahdi مطرح شد
12 پاسخ

تغییر مقدار اندیس ها

سلام و درود خسته نباشید
من اطلاعاتی رو بصورت جیسون در فایلی دارم چطور میتونم مقدار یکی از اندیس هارو بدون اینکه کلید ارایه حذف بشود تغییر بدهم ؟
{

"10325": {
    "sea": "",
    "id": ""
},
"103775": {
"sea": "",
"id": ""
}

}


ثبت پرسش جدید
ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

بِسْمِ ٱلْلّٰهِ ٱلْرَّحْمٰنِ ٱلْرَّحِیْم
ٱلْحَمْدُ لِلّٰهِ

سلام ، میشه یک مثال بزنی؟ از اون چیزی که مدنظرته یعنی مثلا می خوای چیکار کنی میخوای چی بشه و منظور از اندیس ها و مقدار اندیس ها چیه؟


Mahdi
تخصص : برنامه نویس تازه کار
@Mahdi271 2 سال پیش مطرح شد
0

سلام اطلاعاتی هستند که میخوام قابل جایگزینی باشند ، اندیس ها همان id , sea مقدارشون منظورم هست


ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0
<?php

$json ='
    {
        "10325": {
        "sea": "",
        "id": ""
        },

        "103775": {
        "sea": "",
        "id": ""
        }
    }
';

$json_decode_array = json_decode($json,true /*Decode as an array*/);

$json_decode_array["103775"/*Your key*/]['sea'/*Your value*/] = 'Caspian';

print(json_encode($json_decode_array)); // {"10325":{"sea":"","id":""},"103775":{"sea":"Caspian","id":""}}

Mahdi
تخصص : برنامه نویس تازه کار
@Mahdi271 2 سال پیش آپدیت شد
0

خیلی ممنون از کمکتون اینطوری میخوام سیو کنم اطلاعات رو ولی همه رو پاک میکنه و فقط Hi داخل فایل میمونه...

$get = json_decode(file_get_contents('file.json'),true);
file_put_contents('file.json',json_encode($get[$id]['sea'] = 'Hi'));

ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

خب تو اومدی تغییراتتو تو فایل انداختی ، باید تغییرو جدا انجام بدی روی متغیره و بعدش بری متغیر رو داخل فایل بندازی!
و $id تعریف نشده !

<?php
$get = json_decode(file_get_contents('file.json'),true);
$id = 103775;
$get[$id]['sea'] = 'Hi'; // It returns 'Hi' ! not the $get
file_put_contents('file.json',json_encode($get));

echo file_get_contents('file.json'); //{"10325":{"sea":"","id":""},"103775":{"sea":"Hi","id":""}}

ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

نکته! اپراتور تخصیص گر (assignment) ، خود همون چیزی رو که بهش انتصاب میشه رو برمی گردونه..!

$get = [1,2,3];
echo $get[0]=19;//19 : ($get[0]=19) returns 19!

Mahdi
تخصص : برنامه نویس تازه کار
@Mahdi271 2 سال پیش مطرح شد
0

خیلی ممنون اینکه کمک کردی مرسی از اینکه وقت گرانبهاتون رو خرج کردید
من هر چقدر گشتم نتونستم پرسش جدید ایجاد کنم چطوری هست شما میدونین ؟


Mahdi
تخصص : برنامه نویس تازه کار
@Mahdi271 2 سال پیش مطرح شد
0

یه سوال دیگه داشتم که چطور میشه به مقدار اون اندیس که میخوایم دست پیدا کنیم؟؟


ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

https://roocket.ir/discuss/create
یا داخل بخش پرسش و پاسخ دکمه پرسش جدید رو بزن

بعدش هم من تازگی وارد اینجا شدم و حتی نمی دونم که چطوری پرسش رو تعیین کنم که پاسخ داده شده یا نه..

أللّٰه را شکر
تشکر :)


ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

منظور اینه که sea رو بگیری؟
خب اگه آره تو همون جا به جای انتصاب کردن که اون تکه رو پشت مساوی می ندازیم رو بردار و استفاده کن مثلا

echo $get[132775]['sea'];

Mahdi
تخصص : برنامه نویس تازه کار
@Mahdi271 2 سال پیش مطرح شد
0

اینجوری مقدار sea رو برمیگردونه ؟


ابوالفضل رجائی نسب
تخصص : برنامه نویس (laravel-backend-p...
@abol313 2 سال پیش مطرح شد
0

yeah the value of sea


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام