【问题标题】:How to get a string from requested array PHP如何从请求的数组 PHP 中获取字符串
【发布时间】:2019-03-13 09:07:55
【问题描述】:

我有一个带有代码的文件 swifts.php(经过大量研究,我写了这个)

    <?php

$swift= array(
'PBANUA2XXXX' => 'PRIVATBANK',
'Swift2' => 'word2',
'Swift3' => 'word3',
'Swift4' => 'word4',
'Swift5' => 'word5',
'etc' => 'word6',
'etc..' => 'word7',
); 


echo http_build_query($swift) . "\n";
echo http_build_query($swift, '', '&amp;');

?>

我的问题是如何接收字符串,例如当我使用https://example.com/swifts.php?swift=Swift3 请求 Swift3 时 我想在页面中只接收字符串 word3 但它向我显示了所有数组,例如:PBANUA2XXXX=PRIVATBANK&Swift2=word2&Swift3=word3& 等等......

我怎样才能得到我的要求?

【问题讨论】:

  • $_GETarrays,以及这两个 echo $swift[$_GET['swift']]
  • 只需注释下面两条回显行并添加 echo $swift[$_GET['swift']];die;
  • 如果您使用@Script47 的答案,您想添加一个检查以检查$_GET['swift'] 是否使用isset() 定义。
  • @Script47,谢谢你的回答,现在才意识到我没有用 ; 结束你的代码。您的回答也有效,只是现在不了解 isset()

标签: php string url get request


【解决方案1】:

您必须使用$_GET 获取查询字符串。 然后使用你的数组来获取价值

echo $swift[$_GET['swift']]; // as $_GET['swift'] = Swift3

so $swift[$_GET['swift']] = 'word3';

【讨论】:

  • 请注意,如果未定义 swift 参数,这将引发 Notice: Undefined index 错误。需要使用isset() 进行额外检查以防止这种情况发生。
  • @user1234 - 我在我的代码下方添加了 echo $swift[$_GET['swift']]; 并删除了 http_build_query 并且当我转到 (example.com/swift.php?swift=anynumber) @Tom Udding 时它似乎工作正常 - 我没有看到注意:未定义索引错误,未定义swift是什么意思?
  • @haitashe 例如,当 URL 类似于 example.com/swift.php?swift= 时,$_GET['swift'] 将是未定义的。您永远不知道 URL 会发生什么,因此您应该实施检查以防止任何错误。
  • @TomUdding 哦,谢谢,现在我明白了
猜你喜欢
  • 2012-02-16
  • 1970-01-01
  • 2011-07-29
  • 1970-01-01
  • 1970-01-01
  • 2019-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多