Rumah > Soal Jawab > teks badan
Saya sudah lama keliru tentang soalan ini Saya harap seseorang boleh memberi saya nasihat.
Andaikan kandungan dalam config.php ialah:
<?php
$config['heelo'] = array(
'k1' => '111111',
'k2' => '222222',
'k3' => '333333',
);
atau:
<?php exit;?>{
"k1": "111111",
"k2": "222222",
"k3": "333333",
}
Bagaimanakah saya boleh mengubah suai nilai di bawah 'k1'? Bagaimanakah saya boleh mencapai ini tanpa menggunakan str_replace? (Disebabkan nilai 'k1' tidak tetap, kaedah yang saya mahu ialah mencari kunci, kemudian mengubah suai nilai kunci dan menyimpan fail)
大家讲道理2017-07-03 11:42:50
Yang pertama lebih mudah untuk dilakukan, tetapi yang kedua harus disemak terlebih dahulu untuk melihat sama ada ia ditulis dengan betul. Struktur ini serupa dengan objek JSON tetapi tidak, jadi ia tidak mudah dilakukan.
Kaedah pertama
include '....'; // 此处为文件名
// 下面只是示例,随便怎么操作$config['hello']
foreach($config['hello'] as $key => $value) {
...
}
$output = "$config['hello'] = " . var_export($config['hello'], TRUE);
file_put_contents('....', $output); // 省略号处为原来的文件名
digunakan terutamanya untuk mengembalikan hasil kepada pembolehubah apabila menggunakan var_export
输出可供PHP读取的数组,此函数第二个参数为false
时,直接输出,为true
.
Satu perkara yang perlu diingatkan ialah susun atur tatasusunan yang dihasilkan oleh fungsi ini tidak begitu menarik jika anda keberatan, tulis sendiri.
Ubah suaik1
kod contoh
include '....';
$config['hello']['k1'] = 'aaaa';
$output = "$config['hello'] = " . var_export($config['hello'], TRUE);
file_put_contents('....', $output);
漂亮男人2017-07-03 11:42:50
Malah, cara paling mudah adalah dengan tidak menulis fail konfigurasi seperti ini Format fail konfigurasi secara amnya seperti berikut:
<?php
return [
'k1' => '111',
'k2' => '222',
'k3' => '333'
];
Fail luaran boleh terus memberikan nilai tatasusunan kepada pembolehubah dengan memerlukan fail, seperti
$config = require 'config.php';
Mudah untuk mendapatkan dan menukar nilai, dan juga mudah untuk menulis kembali ke fail.