douluohan3403 2019-01-23 15:21
浏览 234
已采纳

如何在PHP中处理动态路由?

I'm creating an API via PHP. I need to let users see a particular user. For example if someone goes to mysite.com/users/2, he must get the data about the user with id=2.

This is my .htaccess file:

RewriteEngine On
RewriteCond %{REQUEST_URI} !\.css$
RewriteRule ^([-/_a-zA-Z0-9\s]*)$  index.php?url=$1 [QSA,L]

The variable $url in index.php contains the whole url (for example users/2)

I use something like if($url == "users"){ //code } for routes, but what can I do with id that can be various?

  • 写回答

2条回答 默认 最新

  • dongling3243 2019-01-23 15:32
    关注

    Since you have everything in $url, you can just use explode()

    Here's an example:

    $url = "users/1234";
    $url_array = explode("/", $url, 2);
    echo $url_array[1]; 
    

    This doesn't handle any errors, and as you stated in the comments, you'd need to implement those. So, unless this is a very small project it does seem safer, more maintanable, faster, etc. to use a framework like Laravel, or perhaps a micro-framework Lumen or Slim if you only need a few features.

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

报告相同问题?

悬赏问题

  • ¥15 乌班图ip地址配置及远程SSH
  • ¥15 怎么让点阵屏显示静态爱心,用keiluVision5写出让点阵屏显示静态爱心的代码,越快越好
  • ¥15 PSPICE制作一个加法器
  • ¥15 javaweb项目无法正常跳转
  • ¥15 VMBox虚拟机无法访问
  • ¥15 skd显示找不到头文件
  • ¥15 机器视觉中图片中长度与真实长度的关系
  • ¥15 fastreport table 怎么只让每页的最下面和最顶部有横线
  • ¥15 java 的protected权限 ,问题在注释里
  • ¥15 这个是哪里有问题啊?