欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP中的string類型使用說明

 更新時(shí)間:2010年07月27日 19:24:33   作者:  
string就是一串連續(xù)的字符。
注意:PHP沒有對(duì)string的長(zhǎng)度做限制。唯一限制的就是PHP在計(jì)算機(jī)中的可用內(nèi)存(php.ini文件中的memory_limit變量的值)
限定字符串范圍的方法有4中:
1、單引號(hào);
2、雙引號(hào);
3、原型文檔語(yǔ)法;
4、nowdoc syntax(PHP5.3.0開始)

1、如果字符串使用單引號(hào)“‘”包裹,字符串中如果出現(xiàn)單引號(hào)“,”和反斜杠“\”符號(hào),需要進(jìn)行轉(zhuǎn)義。
復(fù)制代碼 代碼如下:

// Outputs: Arnold once said: "I'll be back"
echo 'Arnold once said: "I\'ll be back"';
// Outputs: You deleted C:\*.*?
echo 'You deleted C:\\*.*?';
// Outputs: You deleted C:\*.*?
echo 'You deleted C:\*.*?';

(有待驗(yàn)證 單引號(hào)包裹的字符串反斜杠是否需要轉(zhuǎn)義)

2、如果字符串被雙引號(hào)包裹 一下字符都會(huì)被轉(zhuǎn)義:
Escaped characters Sequence Meaning
\n linefeed (LF or 0x0A (10) in ASCII)
\r carriage return (CR or 0x0D (13) in ASCII)
\t horizontal tab (HT or 0x09 (9) in ASCII)
\v vertical tab (VT or 0x0B (11) in ASCII) (since PHP 5.2.5)
\f form feed (FF or 0x0C (12) in ASCII) (since PHP 5.2.5)
\\ backslash
\$ dollar sign
\" double-quote
\[0-7]{1,3} the sequence of characters matching the regular expression is a character in octal notation
\x[0-9A-Fa-f]{1,2} the sequence of characters matching the regular expression is a character in hexadecimal notation

如果字符串 使用雙引號(hào)“"”或者原形文檔語(yǔ)法的形式包裹的話,在字符串中的變量會(huì)被解析。
1、簡(jiǎn)單語(yǔ)法:
因?yàn)榻馕銎鲿?huì)貪婪匹配$后面的字符,所以,為了不出什么以外,應(yīng)該使用"{"和"}"來表名變量的邊界。
復(fù)制代碼 代碼如下:

<?php
$beer = 'Heineken';
echo "$beer's taste is great"; // works; "'" is an invalid character for variable names
echo "He drank some $beers"; // won't work; 's' is a valid character for variable names but the variable is "$beer"
echo "He drank some ${beer}s"; // works
echo "He drank some {$beer}s"; // works
?>

同樣,數(shù)組的下標(biāo)和對(duì)象的屬性也會(huì)不解析。
復(fù)制代碼 代碼如下:

<?php
// These examples are specific to using arrays inside of strings.
// When outside of a string, always quote array string keys and do not use
// {braces}.
// Show all errors
error_reporting(E_ALL);
$fruits = array('strawberry' => 'red', 'banana' => 'yellow');
// Works, but note that this works differently outside a string
echo "A banana is $fruits[banana].";
// Works
echo "A banana is {$fruits['banana']}.";
// Works, but PHP looks for a constant named banana first, as described below.
echo "A banana is {$fruits[banana]}.";
// Won't work, use braces. This results in a parse error.
echo "A banana is $fruits['banana'].";
// Works
echo "A banana is " . $fruits['banana'] . ".";
// Works
echo "This square is $square->width meters broad.";
// Won't work. For a solution, see the complex syntax.
echo "This square is $square->width00 centimeters broad.";
?>

2、復(fù)合語(yǔ)法:
復(fù)制代碼 代碼如下:

<?php
// Show all errors
error_reporting(E_ALL);
$great = 'fantastic';
// Won't work, outputs: This is { fantastic}
echo "This is { $great}";
// Works, outputs: This is fantastic
echo "This is {$great}";
echo "This is ${great}";
// Works
echo "This square is {$square->width}00 centimeters broad.";
// Works
echo "This works: {$arr[4][3]}";
// This is wrong for the same reason as $foo[bar] is wrong outside a string.
// In other words, it will still work, but only because PHP first looks for a
// constant named foo; an error of level E_NOTICE (undefined constant) will be
// thrown.
echo "This is wrong: {$arr[foo][3]}";
// Works. When using multi-dimensional arrays, always use braces around arrays
// when inside of strings
echo "This works: {$arr['foo'][3]}";
// Works.
echo "This works: " . $arr['foo'][3];
echo "This works too: {$obj->values[3]->name}";
echo "This is the value of the var named $name: {${$name}}";
echo "This is the value of the var named by the return value of getName(): {${getName()}}";
echo "This is the value of the var named by the return value of \$object->getName(): {${$object->getName()}}";


訪問,修改字符串中的指定字符:
字符串可以使用"[]"和"{}"進(jìn)行訪問。(注意:php5.3.0以后不建議使用“{}”訪問)
注意:使用其他類型(非integer)類型訪問字符串指定的字符,都會(huì)返回NULL
警告:
Writing to an out of range offset pads the string with spaces. Non-integer types are converted to integer. Illegal offset type emits E_NOTICE. Negative offset emits E_NOTICE in write but reads empty string. Only the first character of an assigned string is used. Assigning empty string assigns NUL byte。

相關(guān)文章

最新評(píng)論