dqyy38265 2014-06-21 15:20
浏览 9
已采纳

如果以给定字符开始,则返回变量的剩余部分

If the value of a variable (i.e. $var="^hello";) starts with a given character (i.e. ^), how could I return the remainder of that variable (i.e. hello), and returnFALSE (or NULL or 0 if easier) if it doesn't start with the given character? Note that there is no guarantee that the variable will be a string. I tried the following, but it results in errors if the value is NULL.

$var='^hello'; //Works
$var=123; //Works
$var=NULL; //Doesn't work
echo ($var[0]=='^')?substr($var,1):false;
echo($new);
  • 写回答

2条回答 默认 最新

  • dongshi8425 2014-06-21 15:25
    关注

    What you've done actually works, but when you echo false, nothing will appear on the screen, so just wrap false with double quotes to display "false" on the screen

    $var='^hello'; //Works
    $var=123; //Works
    echo ($var[0]=='^')?substr($var,1):"false"; // Add double quotes to false
    

    Live demo

    EDIT. Note that this will not work if $var is set to NULL. To prevent an error, just change ($var[0]=='^') to ($var && $var[0]=='^')

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分