Maison > Questions et réponses > le corps du texte
Je suis confus à propos de cette question depuis longtemps. J'espère que quelqu'un pourra me donner des conseils.
Supposons que le contenu de config.php soit :
<?php
$config['heelo'] = array(
'k1' => '111111',
'k2' => '222222',
'k3' => '333333',
);
ou :
<?php exit;?>{
"k1": "111111",
"k2": "222222",
"k3": "333333",
}
Comment modifier la valeur sous 'k1' ? Comment puis-je y parvenir sans utiliser str_replace ? (Comme la valeur de 'k1' n'est pas fixe, la méthode que je souhaite est de trouver la clé, puis de modifier la valeur de la clé et de sauvegarder le fichier)
大家讲道理2017-07-03 11:42:50
Le premier est plus facile à faire, mais le second doit d'abord être vérifié pour voir s'il est écrit correctement. Cette structure est similaire à un objet JSON mais ce n'est pas le cas, ce n'est donc pas facile à faire.
La première méthode
include '....'; // 此处为文件名
// 下面只是示例,随便怎么操作$config['hello']
foreach($config['hello'] as $key => $value) {
...
}
$output = "$config['hello'] = " . var_export($config['hello'], TRUE);
file_put_contents('....', $output); // 省略号处为原来的文件名
est principalement utilisé pour renvoyer des résultats aux variables lors de l'utilisation de var_export
输出可供PHP读取的数组,此函数第二个参数为false
时,直接输出,为true
.
Une chose qu'il faut rappeler est que la disposition du tableau générée par cette fonction n'est pas très belle. Si cela vous dérange, vous pourriez aussi bien en écrire une vous-même.
Modifyk1
include '....';
$config['hello']['k1'] = 'aaaa';
$output = "$config['hello'] = " . var_export($config['hello'], TRUE);
file_put_contents('....', $output);
漂亮男人2017-07-03 11:42:50
En fait, le plus simple est de ne pas écrire le fichier de configuration comme ceci. Le format du fichier de configuration est généralement le suivant :
<?php
return [
'k1' => '111',
'k2' => '222',
'k3' => '333'
];
Les fichiers externes peuvent attribuer directement la valeur du tableau à une variable en exigeant le fichier, tel que
$config = require 'config.php';
Il est facile d’obtenir et de modifier des valeurs, et il est également facile de réécrire dans des fichiers.