|
is_string
Find whether the type of a variable is string
(PHP 4, PHP 5)
Example 2595. is_string() example<?php The above example will output: is string Related Examples ( Source code ) » is_string Examples ( Source code ) » Dividing a String into Tokens with strtok() Examples ( Source code ) » Returns true if $a is a string Examples ( Source code ) » Get WhoIs Information for 270 different tld's Code Examples / Notes » is_stringdainix zsigmond
To php dot net at oui dot jp: It's going to return a string if the variable's value is encased around quotes or apostrophes, period. Be it a '0' or a '1', it's a string all around. The index in an array is a little bit of a different story. Sample coding is below: <?php $ar = array('this is a string.', '38', '038', 0382, 3892.283); $ar2 = array('S1' => 'string.', 'S2' => 'a string.', '3' => 3827, '3.82.' => '2222', '-1' => 'foo'); foreach($ar as $num => $string) { if (is_string($string)) { echo 'Yes. <br />'; } else { echo 'No. <br />'; } } print_r($ar); foreach($ar2 as $num => $string) { if (is_string($num)) { echo 'Yes. <br />'; } else { echo 'No. <br />'; } } print_r($ar2); ?> The first foreach contains a simple if/then statement that checks if the array value is a string or not, which works correctly (Yes, Yes, Yes, No, No). The second checks if the index identifier is a string. It returns Yes, Yes, No, and Yes. Printing the array: Array ( [S1] => string. [S2] => a string. [3] => 3827 [3.82] => 2222 [-1] => foo) The index identifier will be marked as a string if the identifier is not an integer above zero. tobias_demuth
Returns true, if the string is empty, too.
yarco dot w
re: php dot net at oui dot jp <?php $a = array('0' => 'zero'); // '0' // is different from $b = '0'; // '0' ?> Because when you use array, it will automatically change the key to integer if it could. So, it output: >php -r "print var_dump(array_keys(array('0' => ' zero', '1' => 'one')));" array(2) { [0]=> int(0) [1]=> int(1) } They are int type, not string. djhook
function is_upper($input) { return ($input == strtoupper($input)); } function is_lower($input) { return ($input == strtolower($input)); } this functions check if a string is all upper/lower case. input: string output: true/false slicky
Be aware that this function could result into unwanted results if you check single chars in an array. For instance: You have a simple string and want to repeat this string evertime it ends. for ($i=0; $i < strlen($string);$i++){ if(!is_string($key[$x])) $x = 0; echo $key[$x]; $x++; } This will print you out the key, but won't iterate it since $x won't be reset. is_string function will give out true at element in that string, even if it doesn't exist. for instance is_string $key[1000] while your string is just 10chars long. However this doesn't matter just use $key[$x] == '' instead. Of course you won't use this to iterate a string, but you might come across something where this get useful, for instance for a en/decrypt engine. php dot net
<?php // Interesting... $arr = array ('abc','def','ghi'); $aarr = array ('0' => 'abc','1' => 'def','2' => 'ghi'); foreach ($arr as $u => $v) print is_string($u) ? "Yes\n":"no\n"; // no: ok, index is numeric (0, 1, 2) foreach ($aarr as $u => $v) print is_string($u) ? "Yes\n":"no\n"; // still no! was expecting Yes! if (is_string ('0')) print "'0' is a string\n"; // ...as '0' is a string! ?> |
Change Languagedebug_zval_dump doubleval empty floatval get_defined_vars get_resource_type gettype import_request_variables intval is_array is_binary is_bool is_buffer is_callable is_double is_float is_int is_integer is_long is_null is_numeric is_object is_real is_resource is_scalar is_string is_unicode isset print_r serialize settype strval unserialize unset var_dump var_export |