explode single variable in php

后端 未结 4 1973
旧巷少年郎
旧巷少年郎 2021-01-26 13:25

Here is what i have in php :

I need to do explode the given variable

$a = \"hello~world\";

I need to explode as

$first         


        
相关标签:
4条回答
  • 2021-01-26 13:53

    explode returns an array. explode will break the given string in to parts using given character(here its ~) and will return an array with the exploded parts.

    $a = "hello~world";
    $str_array = explode("~",$a);
    
    $first = $str_array[0];
    $second = $str_array[1];
    
    echo $first." ".$second;
    
    0 讨论(0)
  • 2021-01-26 14:01

    If you know the number of variables you're expecting to get back (ie. 2 in this case) you can just assign them directly into a list:

    list($first, $second) = explode('~', $a);
    // $first = 'hello';
    // $second = 'world';
    
    0 讨论(0)
  • 2021-01-26 14:16

    Explode function will return an array with "explosed" elements

    So change your code as follows (if you know that only two elements will be present)

    list($a, $b) = explode('~', $str); 
    //You don't need to call explode one time for element.
    

    Otherwise, if you don't know the number of elements:

    $exploded_array = explode('~', $str);
    foreach ($exploded_array as $element)
    {
       echo $element;
    }
    
    0 讨论(0)
  • 2021-01-26 14:19

    Your code should trigger a clear error message with debug information:

    Notice: Array to string conversion

    ... on this line:

    echo explode('.', 'a.b');
    

    ... and finally print this:

    Array

    I suppose you would not ignore this helpful information if you'd seen it so you've probably haven't configured your PHP development box to display error messages. The simplest way is, when installing PHP, to get your php.ini file by copying php.ini-development instead of php.ini-production. If you are using a third-party build, just tweak the error_reporting and display_errors directives.

    As about the error, you have to understand that arrays are complex data structures, not scalar values. You cannot print an array as-is with echo. In the development phase you can inspect it with var_dump() (like any other variable).

    0 讨论(0)
提交回复
热议问题