将 DOM 元素转换为 PHP 中的字符串
Converting a DOM element into a string in PHP
我是 运行 一个 Wordpress 站点并使用 WPML 翻译插件。在 WPML 中有一个名为 icl_link_to_element(2880);
的方法,它 returns 并在 DOM 中生成以下元素:
<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>
我想将此元素转换为字符串,以便我可以简单地 return 并将 url atencion-al-cliente
的最后一部分存储到一个唯一变量中。
完成这项工作的最佳方法是什么?
回答下面的评论:
现在 DOM 中出现了两个元素。
<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>
和
"NULL
"
使用preg_match
获取href的值,现在使用parse_url
获取匹配的值,获取后只需从return数组中收集路径。
现在是时候获取 url 的最后一部分了,所以试试下面的代码。
$html = '<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>';
preg_match('/<a href="(.+)">/', $html, $match);
$info = parse_url($match[1]);
$str = $info['path'];
$len = strlen($info['path']);
echo trim(substr($str, strrpos($str, '/'), $len), "/"); //atencion-al-cliente
首先执行以下步骤得到 URL
$page = icl_object_id(2880, 'page', true);
$url = get_permalink($page);
然后用$parts = explode("/", $url)
函数得到那个数组的最后一个元素,你可以用array_pop()
我是 运行 一个 Wordpress 站点并使用 WPML 翻译插件。在 WPML 中有一个名为 icl_link_to_element(2880);
的方法,它 returns 并在 DOM 中生成以下元素:
<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>
我想将此元素转换为字符串,以便我可以简单地 return 并将 url atencion-al-cliente
的最后一部分存储到一个唯一变量中。
完成这项工作的最佳方法是什么?
回答下面的评论:
现在 DOM 中出现了两个元素。
<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>
和
"NULL
"
使用preg_match
获取href的值,现在使用parse_url
获取匹配的值,获取后只需从return数组中收集路径。
现在是时候获取 url 的最后一部分了,所以试试下面的代码。
$html = '<a href="https://www.someurl.com/es/atencion-al-cliente">Atención al cliente</a>';
preg_match('/<a href="(.+)">/', $html, $match);
$info = parse_url($match[1]);
$str = $info['path'];
$len = strlen($info['path']);
echo trim(substr($str, strrpos($str, '/'), $len), "/"); //atencion-al-cliente
首先执行以下步骤得到 URL
$page = icl_object_id(2880, 'page', true);
$url = get_permalink($page);
然后用$parts = explode("/", $url)
函数得到那个数组的最后一个元素,你可以用array_pop()