Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何放置符号'';和'=';从变量导入url?_Php_Url - Fatal编程技术网

Php 如何放置符号'';和'=';从变量导入url?

Php 如何放置符号'';和'=';从变量导入url?,php,url,Php,Url,在php中,函数get\u query\u string()返回字符串变量。比如说 $end_of_url = get_query_string(); print $end_of_url; 我会打印出来的 ?id=192 我需要把它放在url的末尾,但是当我附加它时,我有一个类似url的 问号(?)替换为ascii值%3F,等号(=)替换为%3D 如何将问号和等号正确地放入url 添加的代码: <div id="navigationLang" class="clearfix"

在php中,函数get\u query\u string()返回字符串变量。比如说

$end_of_url = get_query_string();
print $end_of_url;
我会打印出来的

?id=192
我需要把它放在url的末尾,但是当我附加它时,我有一个类似url的

问号(?)替换为ascii值%3F,等号(=)替换为%3D

如何将问号和等号正确地放入url

添加的代码:

    <div id="navigationLang" class="clearfix" style="margin-right: 60px;"> 
            <?php 
                $path = $_GET['q'];
                $languages = language_list('enabled');
                $links = array();
                foreach ($languages[1] as $language) {
                    $links[$language->language] = array(
                        'href'       => $path.get_query_string(),
                        'title'      => ucfirst($language->prefix),
                        'language'   => $language,
                        'attributes' => array('class' => 'language-link'),
                    );
                }

主要问题是打印/回显工作正常,但当我在网站中测试时,链接使用ascii符号(%3F和%3D),我需要问号和等号,这是因为您的
get\u query\u string()
是urlencoding。 尝试:


由此解决的问题:

$id = $_GET['id'];  // here i get id value (in example it's  192)

 $links[$language->language] = array(
                        'href'       => $path,
                        'title'      => ucfirst($language->prefix),
                        'language'   => $language,
                        'attributes' => array('class' => 'language-link'),
                        'query' => array('id' => $id),  // here i create end of url

                    );
主要的一点是,在drupal中,我应该不在href中传递所有东西(?id=192),而是添加作为数组的'query'参数。所有的问号和等号都自动添加,所以我得到了正确的结尾链接

?id=192 

其中192是前一个url的变量。

使用
htmlspecialchars
htmlspecialchars
进行url编码。显示代码plz。如何准确地发送到URL?如何使用
$links
?打印主题('links',$links,array());这太远了。。。您需要查看URL的打印内容是什么,现在的主题是什么?只需在创建内容时打印内容即可。在我的例子中,href代表改变网站语言的图标。Href是它应该去的URL。它工作得很好,但当我得到像?id=192这样的东西并翻译它时,所有在“?”之后的内容都会消失,所以我需要从以前的url获取,如果问号后面有东西,则将其添加到链接的末尾。
$id = $_GET['id'];  // here i get id value (in example it's  192)

 $links[$language->language] = array(
                        'href'       => $path,
                        'title'      => ucfirst($language->prefix),
                        'language'   => $language,
                        'attributes' => array('class' => 'language-link'),
                        'query' => array('id' => $id),  // here i create end of url

                    );
?id=192