检索以变量为键的关联数组值

发布于 2024-10-19 04:45:46 字数 198 浏览 1 评论 0原文

这是我遇到问题的一些代码。不知道为什么,我感觉这段代码我用过很多次了,没有任何问题。

$people['firstname'] = "Fred";
$t = "firstname";
echo $people[$t] ;

echo 没有返回任何内容,而我希望它返回 Fred。

谢谢你的帮助,马克

Here's some code that I have trouble with. I don't know why, I feel I have used this code many times without any problems.

$people['firstname'] = "Fred";
$t = "firstname";
echo $people[$t] ;

echo returns nothing, whereas i expect it to return Fred.

Thanks for your help, Marc

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

合约呢 2024-10-26 04:45:46

不知道为什么这对你不起作用。

$people['firstname'] = 'testvalue';

$key = 'firstname';

$value = $people[$key];

echo $value;

按预期工作,回显“测试值”

仔细检查您的拼写并与您的刻度保持一致(我确信纯粹是风格。)

Not sure why this isn't working for you.

$people['firstname'] = 'testvalue';

$key = 'firstname';

$value = $people[$key];

echo $value;

Works as expected, echos out "testvalue"

Double check your spelling and be consistent with your ticks (purely stylistic, I'm sure.)

海风掠过北极光 2024-10-26 04:45:46

我认为您可以将关联数组值作为变量传递。这对我有用

@$username=$_POST['username'];
@$password=$_POST['password'];

$result=array(
'username'=> "".$username."",
'password'=> "".$password.""
);

I think you can pass associative array value as variable . this is working for me

@$username=$_POST['username'];
@$password=$_POST['password'];

$result=array(
'username'=> "".$username."",
'password'=> "".$password.""
);
感悟人生的甜 2024-10-26 04:45:46

好的,我找到了我的代码的解决方案,看起来变量包含,没有 ASCII 字符,所以我必须删除它们,才能使其正常工作。

$country = preg_replace('/[[:^print:]]/', '', $country);
$CCodes2=$CCodes[$country];

您应该检查您的 php 文件编码,例如,如果您使用 WYSIWYG 编辑器或格式化文本,请在粘贴之前删除任何这些非 ASCII 文本。

OK I found solution for my code, looks like variable contains, none ASCII character so I had to remove them, to make it works.

$country = preg_replace('/[[:^print:]]/', '', $country);
$CCodes2=$CCodes[$country];

You should check your php file encoding, e.g if you are use WYSIWYG editor or formatted text, make sue remove any of these none ASCII text before paste it .

溺渁∝ 2024-10-26 04:45:46
$params_to_json = '{"' . str_replace(['=', '&'], ['":"', '","'], $_SERVER['QUERY_STRING']) . '"}';
$json_to_array = json_decode($params_to_json, true) ?? array(); 
extract($json_to_string); // Converts array keys into variable names and array values into variable value

作为函数:

function url_params()
{
    $params_to_json = '{"' . str_replace(['=', '&'], ['":"', '","'], $_SERVER['QUERY_STRING']) . '"}';
    return json_decode($params_to_json, true) ?? array();
}
extract(url_params());

例如 URL:example.com?id=3

echo $id //3
$params_to_json = '{"' . str_replace(['=', '&'], ['":"', '","'], $_SERVER['QUERY_STRING']) . '"}';
$json_to_array = json_decode($params_to_json, true) ?? array(); 
extract($json_to_string); // Converts array keys into variable names and array values into variable value

As a function:

function url_params()
{
    $params_to_json = '{"' . str_replace(['=', '&'], ['":"', '","'], $_SERVER['QUERY_STRING']) . '"}';
    return json_decode($params_to_json, true) ?? array();
}
extract(url_params());

For example URL: example.com?id=3

echo $id //3
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文