本文将向您展示如何在 PHP 中将数组转换为查询字符串。查询字符串是 URL 中以问号 (?) 开头的部分。
例子:
Input: $arr = (
'company' => 'GeeksforGeeks',
'Address' => 'Noida',
'Phone' => '9876543210'
);
Output: company=GeeksforGeeks&Address=Noida&Phone=9876543210
有两种方法可以将数组转换为查询字符串,它们是:
- 使用http_build_query()方法
- 使用urlencode()和rtrim()方法
使用http_build_query()方法
http_build_query() 函数用于从关联(或索引)数组生成 URL 编码的查询字符串。
用法:
string http_build_query(
$query_data,
$numeric_prefix,
$arg_separator,
$enc_type = PHP_QUERY_RFC1738
)
例子:此示例使用 http_build_query() 方法将关联数组转换为查询字符串。
PHP
<?php
$arr = array(
'company' => 'GeeksforGeeks',
'Address' => 'Noida',
'Phone' => '9876543210'
);
$queryStr = http_build_query($arr);
echo $queryStr;
?>
输出
company=GeeksforGeeks&Address=Noida&Phone=9876543210
使用urlencode()和rtrim()方法
首先,我们将创建一个空字符串,然后使用 foreach 循环将键和编码值与等于和 & 符号合并,并至少从右侧修剪 & 符号。
- urlencode() 函数用于对 URL 进行编码。此函数返回一个字符串,其中包含除 -_ 之外的所有非字母数字字符。并替换为百分号 (%),后跟两个十六进制数字和编码为加号 (+) 的空格。
- rtrim() 函数用于删除字符串右侧的空格或其他字符(如果指定)。
用法:
string urlencode( $input )
rtrim( $string, $charlist )
例子:此示例使用 urlencode() 和 rtrim() 方法将关联数组转换为查询字符串。
PHP
<?php
// Crreate an Array
$arr = array(
'company' => 'GeeksforGeeks',
'Address' => 'Noida',
'Phone' => '9876543210'
);
// Create an empty string
$queryStr = '';
// Loop to iterate array elements
foreach ($arr as $key => $value) {
$queryStr .= $key . '=' . urlencode($value) . '&';
}
// Remove the & symbol of right side
$queryStr = rtrim($queryStr, '&');
// Print the Query String
echo $queryStr;
?>
输出
company=GeeksforGeeks&Address=Noida&Phone=9876543210
相关用法
- PHP ArrayObject append()用法及代码示例
- PHP ArrayObject asort()用法及代码示例
- PHP ArrayObject exchangeArray()用法及代码示例
- PHP ArrayObject getArrayCopy()用法及代码示例
- PHP ArrayObject getIterator()用法及代码示例
- PHP ArrayObject getIteratorClass()用法及代码示例
- PHP ArrayObject ksort()用法及代码示例
- PHP ArrayObject natcasesort()用法及代码示例
- PHP ArrayObject natsort()用法及代码示例
- PHP ArrayObject offsetExists()用法及代码示例
- PHP ArrayObject offsetGet()用法及代码示例
- PHP ArrayObject offsetSet()用法及代码示例
- PHP ArrayObject offsetUnset()用法及代码示例
- PHP ArrayObject uasort()用法及代码示例
- PHP ArrayObject uksort()用法及代码示例
- PHP ArrayIterator __construct()用法及代码示例
- PHP ArrayIterator append()用法及代码示例
- PHP ArrayIterator asort()用法及代码示例
- PHP ArrayIterator count()用法及代码示例
- PHP ArrayIterator current()用法及代码示例
- PHP ArrayIterator getArrayCopy()用法及代码示例
- PHP ArrayIterator getFlags()用法及代码示例
- PHP ArrayIterator key()用法及代码示例
- PHP ArrayIterator ksort()用法及代码示例
- PHP ArrayIterator natsort()用法及代码示例
注:本文由纯净天空筛选整理自blalverma92大神的英文原创作品 PHP Program to Convert Array to Query String。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。