开发者

Not returning a count number for filled array

开发者 https://www.devze.com 2022-12-28 10:10 出处:网络
$arrg = array(); if( str_word_count( $str ) > 1 ) { $input_arr = explode(\' \', $str); die(print_r($input_arr));
$arrg = array();
if( str_word_count( $str ) > 1 ) {
    $input_arr = explode(' ', $str);
    die(print_r($input_arr));
    $count = count($input_arr);
    die($count);

above is part of a function. when i run i get;

Array (
    [0] => luke
    [1] => snowden
    [2] => create
    [3] => develop
    [4] => web
    [5] => applications
    [6] => sites
    [7] => alse
    [8] => dab
    [9] => hand
    [10] => design
    [11] => love
    [12] => helping
    [13] => business
    [14] => thrive
    [15] => latest
    [16] => industry
    [17] => developer
    [18] => act
    [19] => designs
    [20] => php
    [21] => mysql
    [22] => jquery
    [23] => ajax
    [24] => xhtml
    [25] => css
    [26] => de
    [27] => montfont
    [28] => award
    [29] => advanced
    [30] => programming
    开发者_如何学C[31] => taught
    [32] => development
    [33] => years
    [34] => experience
    [35] => topic
    [36] => fully
    [37] => qualified
    [38] => electrician
    [39] => city
    [40] => amp
    [41] => guilds
    [42] => level )

Which im expecting;

run this however and nothing is returned:

$arrg = array();
if( str_word_count( $str ) > 1 ) {
    $input_arr = explode(' ', $str);
    //die(print_r($input_arr));
    $count = count($input_arr);
    die($count);


die($count);

Kills your script with $count (an integer) as an exit code.

You'll want:

die((string) $count);

(Or comparable.)


From http://www.php.net/manual/en/function.exit.php (same as die()):

If status is a string, this function prints the status just before exiting.

If status is an integer , that value will also be used as the exit status. Exit statuses should be in the range 0 to 254, the exit status 255 is reserved by PHP and shall not be used. The status 0 is used to terminate the program successfully.


Hmm. Is it doing this because $count is an integer, I wonder? What happens if you die(strval($count))?


die() will not print the argument if it is numeric, it'll use it as exit status code instead.

The problem is only your debugging technique... :o)


have you tried to output $count? at the moment you kill your scrippt with $count as errorcode. simly do

die(print($count));

to get what you want.


Integer parameter to die is used as exit code of the process (die is equivalent to exit). Just check the documentation.

0

精彩评论

暂无评论...
验证码 换一张
取 消