gpt4 book ai didi

php - 如何在 ini 文件中使用 php

转载 作者:可可西里 更新时间:2023-11-01 00:33:43 26 4
gpt4 key购买 nike

我的php代码在这里

 <?php
function String($word){


$lang = parse_ini_file("../pard_language/en/language.ini");

$key = array_search($word, $lang);
if(isset($key)){
echo $key;

}
}


echo String("PARD_INSTALL");
?>

我的language.ini文件是这个

PARD_INSTALL = Install
PARD_USER_AGGREMENT = User Aggrement
PARD_AGREE = Agree
PARD_HOST_NAME = Host Name
PARD_DATA_BASE = Data Base
PARD_DATA_BASE_USER = Data Base User
PARD_DATA_BASE_USER_PASS_WORD = Data Base User Password
PARD_CONNECT = Connect
PARD_RESET = Reset
PARD_ADMIN_USER_NAME = Admin User Name
PARD_ADMIN_USER_PASS_WORD = Admin User Password
PARD_LOGIN = Login

我上面的代码不起作用。我想保留一个包含语言的 ini 文件,并且需要使用上面的 php 函数获取单词值。这段代码没有给出任何输出。请帮我解决这个问题?

最佳答案

您正在搜索未获取 key 的值,parse_ini_file 将返回所有元素的数组,因此使用 $lang[$word] 您应该获取所需的值...

function String($word) {
$lang = parse_ini_file("../pard_language/en/language.ini");
return isset($lang[$word]) ? $lang[$word] : null ;
}

现在这仍然是一个 BAD Approach 为什么?

  • 每次需要加载文件时都必须调用 parse_ini_file
  • String 是函数的错误名称
  • echo 被调用了两次.. 1. 在函数内和函数外使用 return

这是我会用的:

$ini = new ArrayINI("../pard_language/en/language.ini");
echo $ini("PARD_INSTALL");
// or
echo $ini['PARD_INSTALL'];

因为我还扩展了IteratorAggregate 我可以循环所有的值

foreach ( $ini as $k => $value ) {
var_dump($k . " = " . $value);
}

使用的类

class ArrayINI implements ArrayAccess, IteratorAggregate {
private $lang;

public function __construct($ini) {
$this->lang = parse_ini_file($ini);
}

function __invoke($offset) {
return $this->offsetGet($offset);
}

public function getIterator() {
return new ArrayIterator($this->lang);
}

public function offsetSet($offset, $value) {
if (is_null($offset)) {
$this->lang[] = $value;
} else {
$this->lang[$offset] = $value;
}
}

public function offsetExists($offset) {
return isset($this->lang[$offset]);
}

public function offsetUnset($offset) {
unset($this->lang[$offset]);
}

public function offsetGet($offset) {
return isset($this->lang[$offset]) ? $this->lang[$offset] : null;
}
}

关于php - 如何在 ini 文件中使用 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15976038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com