dqhr76378 2016-11-16 02:45
浏览 224
已采纳

从php字符串中提取特定数据

I have a url stored in a database in the following format

index.php?main_page=product_info&cPath=1_11&products_id=568

I want to be able to extract the cPath data, 1_11 in this case, and the products id '568' to two separate variables. Note that the cPath value could vary from being a single number such as 23 to a series of numbers and underscores such as 17_25_31. If extracting the cPath is too difficult I could use the products_id once it's extracted and query the database again, but this isn't ideal as I want to avoid additional requests as much as possible.

I really don't know the best (correct) way to go about this.

  • 写回答

1条回答 默认 最新

  • dragon8837 2016-11-16 02:51
    关注

    A more refined approach as suggested by Robbie Averill

    //first lets the the query string alone
    $string=parse_url('index.php?main_page=product_info&cPath=1_11&products_id=568', PHP_URL_QUERY);
    
    parse_str($string,$moo);
    
    print_r($moo);
    

    Output:

    Array
    (
        [main_page] => product_info
        [cPath] => 1_11
        [products_id] => 568
    )
    

    My original suggestion.

    parse_str('index.php?main_page=product_info&cPath=1_11&products_id=568',$moo);
    
    print_r($moo);
    

    output:

    Array
    (
        [index_php?main_page] => product_info
        [cPath] => 1_11
        [products_id] => 568
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料