Php 如何在没有域的情况下输出url
当我使用Php 如何在没有域的情况下输出url,php,wordpress,Php,Wordpress,当我使用wp\u get\u attachment\u url($name->name)时,它使用完整的url(即http://domain.com/files/file.zip)。这似乎对我的使用不起作用,因为我只想获取没有域的URL(只是子路径) 如果我在代码中手动输入files/file.zip,效果很好。我如何从wp_get_attachment中格式化URL以获得此格式的URL,而不使用域名?您可以尝试使用正则表达式并像这样进行测试 <?php $string = 'http:/
wp\u get\u attachment\u url($name->name)
时,它使用完整的url(即http://domain.com/files/file.zip
)。这似乎对我的使用不起作用,因为我只想获取没有域的URL(只是子路径)
如果我在代码中手动输入
files/file.zip
,效果很好。我如何从wp_get_attachment中格式化URL以获得此格式的URL,而不使用域名?您可以尝试使用正则表达式并像这样进行测试
<?php
$string = 'http://domain.com/files/file.zip';
$pattern = '/\/([\w+\/]+\.\w+)$/';
$replacement = '$1';
echo preg_replace($pattern, $replacement, $string);
?>
您可以尝试使用正则表达式并像这样测试它
<?php
$string = 'http://domain.com/files/file.zip';
$pattern = '/\/([\w+\/]+\.\w+)$/';
$replacement = '$1';
echo preg_replace($pattern, $replacement, $string);
?>
您可以尝试使用正则表达式并像这样测试它
<?php
$string = 'http://domain.com/files/file.zip';
$pattern = '/\/([\w+\/]+\.\w+)$/';
$replacement = '$1';
echo preg_replace($pattern, $replacement, $string);
?>
您可以尝试使用正则表达式并像这样测试它
<?php
$string = 'http://domain.com/files/file.zip';
$pattern = '/\/([\w+\/]+\.\w+)$/';
$replacement = '$1';
echo preg_replace($pattern, $replacement, $string);
?>
或
或
或
或
它应该在WordPress插件中使用,因此必须自动找到域。PHP是一种漂亮的语言:PAs和Cheery的答案,当我使用
wp\u get\u attachment\u url($name->name)
获取url时,这也不起作用,而不是像你那样手动编写。它应该在WordPress插件中使用,因此必须自动找到域名。PHP是一种漂亮的语言:PAs和Cheery的答案,当我使用wp\u get\u attachment\u url($name->name)
获取url时,这也不起作用,而不是像你那样手动编写。它应该在WordPress插件中使用,因此必须自动找到域名。PHP是一种漂亮的语言:PAs和Cheery的答案,当我使用wp\u get\u attachment\u url($name->name)
获取url时,这也不起作用,而不是像你那样手动编写。它应该在WordPress插件中使用,因此,必须自动找到域名。PHP是一种漂亮的语言:PAs和Cheery的答案一样,当我使用wp\u get\u attachment\u url($name->name)
获取url时,这也不起作用,而不是像你那样手动编写。似乎在某种程度上可以去除url,但下载不起作用。如果我echo substr(parse_url(wp_get_attachment_url($promo->promo),PHP_url_PATH),1)
I getfiles/file.zip
,但如果我在代码中使用该文件设置下载文件名,则该文件仍然损坏。如果我在我的代码中手动输入文件/file.zip
,则文件没有损坏。@janlindso的问题在于其他方面。可能是某个脚本输出了其他内容。逐字节比较两个文件以查看差异。当我使用wp\u get\u attachment\u URL获取URL时,它看起来不会剥离URL。如果我尝试回显它,它只返回完整的URL。@janlindso您确定您得到的是URL而不是是的,我的错。它会剥离,但不会使用它从中下载。如果我回显你的代码,我会得到'files/file.zip'
,但是如果我在$file\u url之后使用它,下载就会损坏。如果我复制/粘贴'files/file.zip'
并将其添加到$file\u url中,则下载效果良好。当我使用您的代码时,它似乎不知何故不会“接受”它作为文件路径?甚至尝试用escape char添加引号,但它保持不变。似乎可以以某种方式剥离URL,但下载时不起作用。如果我echo substr(parse_url(wp_get_attachment_url($promo->promo),PHP_url_PATH),1)
I getfiles/file.zip
,但如果我在代码中使用该文件设置下载文件名,则该文件仍然损坏。如果我在我的代码中手动输入文件/file.zip
,则文件没有损坏。@janlindso的问题在于其他方面。可能是某个脚本输出了其他内容。逐字节比较两个文件以查看差异。当我使用wp\u get\u attachment\u URL获取URL时,它看起来不会剥离URL。如果我尝试回显它,它只返回完整的URL。@janlindso您确定您得到的是URL而不是是的,我的错。它会剥离,但不会使用它从中下载。如果我回显你的代码,我会得到'files/file.zip'
,但是如果我在$file\u url之后使用它,下载就会损坏。如果我复制/粘贴'files/file.zip'
并将其添加到$file\u url中,则下载效果良好。当我使用您的代码时,它似乎不知何故不会“接受”它作为文件路径?甚至尝试用escape char添加引号,但它保持不变。似乎可以以某种方式剥离URL,但下载时不起作用。如果我echo substr(parse_url(wp_get_attachment_url($promo->promo),PHP_url_PATH),1)
I getfiles/file.zip
,但如果我在代码中使用该文件设置下载文件名,则该文件仍然损坏。如果我在我的代码中手动输入文件/file.zip
,则文件没有损坏。@janlindso的问题在于其他方面。可能是某个脚本输出了其他内容。逐字节比较两个文件以查看差异。当我使用wp\u get\u attachment\u URL获取URL时,它看起来不会剥离URL。如果我尝试回显它,它只返回完整的URL。@janlindso您确定您得到的是URL而不是是的,我的错。它会剥离,但不会使用它从中下载。如果我回显你的代码,我会得到'files/file.zip'
,但是如果我在$file\u url之后使用它,下载就会损坏。如果我复制/粘贴'files/file.zip'
并将其添加到$file\u url中,则下载效果良好。当我使用您的代码时,它似乎不知何故不会“接受”它作为文件路径?甚至尝试用escape char添加引号,但它保持不变。似乎可以以某种方式剥离URL,但下载时不起作用。如果我echo substr(parse_url(wp_get_attachment_url($promo->promo),PHP_url_PATH),1)
I getfiles/file.zip
,但如果我在代码中使用该文件设置下载文件名,则该文件仍然损坏。如果我在我的代码中手动输入文件/file.zip
,则文件没有损坏。@janlindso的问题在于其他方面。可能是某个脚本输出了其他内容。将两个文件逐字节进行比较