php多行字元串
❶ php 如何輸出多行字元串
<?php
02$str=<<<EOD
03Exampleofstring
04spanningmultiplelines
05usingheredocsyntax.
06EOD;
07
08/*含有變數的更復雜示例*/
09classfoo
10{
11var$foo;
12var$bar;
13
14functionfoo()
15{
16$this->foo='Foo';
17$this->bar=array('Bar1','Bar2','Bar3');
18}
19}
20
21$foo=newfoo();
22$name='MyName';
23
24echo<<<EOT
25Mynameis"$name".Iamprintingsome$foo->foo.
26Now,Iamprintingsome{$foo->bar[1]}.
27Thisshouldprintacapital'A':x41
28EOT;
❷ php將字元串拆分成二維數組
<?php
$str="1235
4565
1596";
functionstrsToArray($strs,$x){//把字元串按指定正則切割為數組
$result=array();
$array=array();
//把與正則匹配的字元串替換為@
$strs=preg_replace($x,'@',trim($strs));
/*這里切割字元串,需要注意的是如果字元串中有@
可以把上下兩行這個@改為其他字元串中沒有的符號*/
$array=explode('@',trim($strs));
foreach($arrayas$key=>$value){
$result[]=$value;
}
return$result;
}
$test=strsToArray($str,'/ /');//以換行符切割字元串為數組
foreach($testas$key=>$value){//遍歷數組,再以空格切割字元串為數組
$testb[]=strsToArray($value,'/s/');
}
echovar_mp($testb);
?>
希望對你有所幫助
❸ php正則表達式問題
/後邊的是修正符
其中i是不區分大小寫
修正符很有用的
例子:
<?php
//標記在整個模式之外;
例://$mode="/\bis\b/U",其中U在外面;
//修正符:i 不區分大小寫的匹配;
//如:"/abc/i"可以與abc或aBC或ABc等匹配;
//修正符:m 將字元串視為多行,不管是那行都能匹配;
例://模式為:$mode="/abc/m";
//要匹配的字元串為:$str="bcefg5e\nabcdfe"
//注意其中\n,換行了;abc換到了下一行;
//$str和$mode仍可以匹配,修正符m使得多行也可匹配;
//修正符:s 將字元串視為單行,換行符作為普通字元;
例://模式為:$mode="/pr.y/";
//要匹配字元串為:$str="pr\ny";
//兩者不可匹配; . 是除了換行以外的字元可匹配;
//修改下模式為:$mode="/pr.y/s";
//其中修正符s將\n視為普通字元,即不是換行;
//最後兩者可以匹配;
//修正符:x 將模式中的空白忽略;
//修正符:A 強制從目標字元串開頭匹配;
例://$mode="/abc/A";
//可以與$str="abcsdfi"匹配,
//不可以與$str2="sdsdabc"匹配;
//因為$str2不是以abc開頭;
//修正符:D 如果使用$限制結尾字元,則不允許結尾有換行;
例://模式為:$mode="/abc$/";
//可以與最後有換行的$str="adshabc\n"匹配;
//元子符$會忽略最後的換行\n;
//如果模式為:$mode="/abc/D",
//則不能與$str="adshabc\n"匹配,
//修正符D限制其不可有換行;必需以abc結尾;
//修正符:U 只匹配最近的一個字元串;不重復匹配;
例:
如模式為:
$mode="/a.*c/";
$str="abcabbbcabbbbbc" ;
preg_match($mode,$str,$content);
echo $content[0]; //輸出:abcabbbcabbbbbc;
//如果$mode="/a.*c/";變成$mode="/a.*c/U";
// 則只匹配最近一個字元串,輸出:abc;
//修正符:e 配合函數preg_replace()使用,
可以把匹配來的字元串當作正則表達式執行;
?>
❹ PHP多行文本變數怎麼截取
$conts=file_get_contents("./demo.txt");
$data=explode(" ",$conts);
$result=array();
foreach($dataas$v){
$result[]=explode("$",$v);
}
echo'<pre>';
print_r($result);
代碼如上,下面這是TXT文本里內容:
100$固定字元$參數
101$固定字元$參數
102$固定字元$參數
下面是執行代碼輸出的內容:
如果想獲取第二行的第三個內容,就 echo $result[1][2];數組下標從0開始這個理解吧,
以上,
❺ php 多行字元串轉段落
$str = 'your stirng';
//如果是純文本內容
$str = nl2br($str);
$str = '<p>' . str_replace('<br>', '</p><p>') . '</p>';
//如果不是純文本內容
$str = str_replace("\r\n", "\n", $str); //注意\r\n外面需要用雙引號
$str = '<p>' . implode('</p><p>', explode("\n", $str)) . '</p>'; //注意\n外面需要用雙引號
❻ PHP如何把Mysql資料庫里的多行數據,轉變成字元串後,放在一個變數里
要echo干什麼呢?
$q = '';
while($row=mysql_fetch_array($result))
{
$q .="<div>ID:".$row['id'].", name:".$row['name']."</div>";
}
$sss=iconv("ASCII","UTF-8",$q);
❼ 為什麼我的PHP多行字元串不能輸出
正確代碼如下 不對你砍我
<?php
echo'<script language="javascript">alert("信息");</script>';
?>
下面的也可以
<?php
echo<<<HTML
<script language="javascript">alert("信息");</script>
HTML;
?>
其實你犯了一下錯誤
第一: 你的PHP語法不對
echo <<<xxx 你這里應該 寫成echo <<<HTML 為了方便是一HTML格式輸出
第二 JS代碼錯誤
<script>
alert("信息");
</script>
<script>這個代表什麼?? 其實瀏覽器根本不知道你想表達是什麼 應該在標簽的裡面加上
language="javascript" 以表明這個是一段JS代碼 他才會以JS的方式彈出對話框
❽ 怎麼編寫PHP程序
有關PHP的安裝配置,可以查閱網頁陶吧上的「PHP安裝全攻略」專題文章。
3.3 語法從語法上看,PHP語言近似於C語言。可以說,PHP是借鑒C語言的語法特徵,由C語言改進而來的。我們可以混合編寫PHP代碼和HTML代碼,不僅可以將PHP腳本嵌入到 HTML 文件中,我們甚至還可以把 HTML 標簽也嵌入在 PHP 腳本里。以下是你可以採用的幾種方法。你可以選用其中一種你最適合的並且就這樣堅持這種方法!
從HTML中分離
以下是可以使用的方法:
<script language="php" . . . </script
<% . . . %
註:當你使用「<? . . . ?」將PHP代碼嵌入於HTML文件中時,可能會同XML發生沖突,同時,能否使用這一縮減形式還取決於PHP本身的設置。為了可適應XML和其它編輯器,你可以在開始的問號後面加上「php」使PHP代碼適應於XML分析器。如:?lt;?php. . . ?」。也可以像寫其它腳本語言那樣使用腳本標記,如:「<script language="php" . . . </script」。
語句與Perl和C一樣,在PHP中用「;」來分隔語句。那些從HTML中分離出來的標志也表示語句的結束。
注釋PHP支持C,C++和Unix風格的注釋方式:
/* C,C++風格多行注釋 */
// C++風格單行注釋
# Unix風格單行注釋
echo 和 print
PHP 和 HTML 最簡單的交互是通過 print 和 echo 語句來實現的,在實際使用中, print 和 echo 兩者的功能幾乎是完全一樣。可以這么說,凡是有一個可以使用的地方,另一個也可以使用。但是,兩者之間也還是一個非常重要的區別:在 echo 函數中,可以同時輸出多個字元串,而在 print 函數中則只可以同時輸出一個字元串。同時,echo函數並不需要圓括弧,所以echo函數更像是語句而不像是函數。讓我們來看看下面這一實例:<?$a="hello";
$b="world";
echo "a","b";
print "a","b";?用瀏覽器觀看這段代碼的運行情況後,你會看到這樣的運行結果:abaParse error: parse error in d:adminmyphphometest.php3 on line 5
這說明這段代碼並不能完全通過解釋,發生錯誤的地方就在代碼的第五行:「print "a","b";」。
3.4一個簡單的實例
通過我們已經學過的知識,你可以編寫一個最簡單的程序輸出一個也許是程序世界中最有名的詞語<HTML<HEAD<TITLE<?echo "Hello World!";?</TITLE</HEAD<BODY<H1First PHP page</H1<HR<?// Single line C++ style comment/*printing the message*/echo "Hello World!";
# Unix style single line comment?</BODY</HTML找本書坐下來看下,學一門語言至少要靜下心來研究一周,再加上不斷的實踐!補充: