我有一些当前正在运行并返回位置变量的代码。 我怎么做它所以只需要变量的第一个字? 目前它正在返回例如“因弗内斯,高地” 我希望它只返回“因弗内斯”。
<?php
echo apply_filters(
"adverts_tpl_single_location",
esc_html( get_post_meta( $post_id, "adverts_location", true ) ),
$post_id )
?>
答案 0 :(得分:1)
您可以使用正则表达式来选择字符串的第一个字母数字字符。
例如:
$firstword = preg_replace('/^([\d\w]+).*?$/', '$1', 'Inverness, Highland');
您可以在此处查看正则表达式:http://regexr.com/3fe20
答案 1 :(得分:1)
您可以使用explode()
:
$all_locations = apply_filters(
"adverts_tpl_single_location",
esc_html( get_post_meta( $post_id, "adverts_location", true ) ),
$post_id );
$locations = explode(',', $all_locations); // since the list is comma separated
echo $locations[0]; // should be 'Inverness'
答案 2 :(得分:0)
您还可以使用strtok()
仅获取字符串的第一个单词。请注意,我将空格和逗号作为可能的分隔符包含在内。
$firstWord = strtok('Inverness, Highland', ' ,');