當前位置:首頁 » 編程語言 » php字元串類

php字元串類

發布時間: 2024-04-17 07:04:55

『壹』 php怎麼遍歷字元串字元

<?php
$temp='abcdefg'; //要遍歷的字元串
$re=array(); //定義接受字元串的數組
for($i=0;$i<strlen($temp);$i++)
{
$re[]=substr($temp,$i,1); //將單個字元存到數組當中
echo $re[$i],',';
}
?>

『貳』 php如何將字元串作為變數使用

如果要將字元串當變數使用最簡單的方法就是替換:

例:

$a="原字元串內容";
$b="變數的值";
$c="變數字元串";
$d=str_replace($c,$b,$a);//新值

從$a到$d,$c包含的字元串就相當於一個變數;不知道你明白沒有!

『叄』 PHP MYSql 數值類型(int)與字串類型(char)區別!~

兩個就是存的數據的大小不同,int 1位代表兩位元組,char 1位代表一位元組
還有的就是int 存的是我們的數字123,char 存的是我們的中文,英文,

『肆』 php字元串單引號和雙引號的區別

其實在之前的PHP100視頻教程里我就講過,單引號和雙引號的區別和效率問題,但還是很多朋友了解的不是很清楚,一直以為PHP中單引號和雙引號是互通的,直到有一天,發現單引號和雙引號出現錯誤的時候才去學習研究。所以今天再拿出來談談他們的區別,希望大家不要再為此困惑。
」 」 雙引號裡面的欄位會經過編譯器解釋,然後再當作HTML代碼輸出。
『 『 單引號裡面的不進行解釋,直接輸出。
從字面意思上就可以看出,單引號比雙引號要快了。
例如:
$abc=』my name is tome』;
echo $abc //結果是:my name is tom
echo 『$abc』 //結果是:$abc
echo 「$abc」 //結果是:my name is tom
特別在使用MYSQL語句的時候,雙引號和單引號的用法讓新手不知所措,在這里,舉個例子,來進行說明。
假設查詢條件中使用的是常量,例如:
select * from abc_table where user_name=』abc』;
SQL語句可以寫成:
SQLstr = 「select * from abc_table where user _name= 『abc』」 ;
假設查詢條件中使用的是變數,例如:
$user_name = $_REQUEST['user_name']; //字元串變數

$user=array (」name」=> $_REQUEST['user_name『,"age"=>$_REQUEST['age'];//數組變數
SQL語句就可以寫成:
SQLstr = 「select * from abc_table where user_name = 『 」 . $user_name . 」 『 「;
SQLstr = 「select * from abc_table where user_name = 『 」 . $user["name"] . 」 『 「;
對比一下:
SQLstr=」select * from abc_table where user_name = 『 abc 『 」 ;
SQLstr=」select * from abc_table where user_name =』 」 . $user _name . 」 『 「;
SQLstr=」select * from abc_table where user_name =』 」 . $user["name"] . 」 『 「;
SQLstr可以分解為以下3個部分:
1:」select * from table where user_name = 『 」 //固定SQL語句
2:$user //變數
3:」 『 」
1,2,3部分字元串之間用」.」 來連接

『伍』 php 字元串轉換成數字

整數 intval($string, 10); 第二個參數表示轉換為10進制整數
不一定是整數 floatval($string)

『陸』 php 字元串 以什麼開頭 以什麼結尾 startWith endWith

可以參考下面的代碼:

//第一個是原串,第二個是 部份串

function startWith($str, $needle) {

return strpos($str, $needle) === 0;

}

//第一個是原串,第二個是 部份串

function endWith($haystack, $needle) {

$length = strlen($needle);

if($length == 0)

{

return true;

}

return (substr($haystack, -$length) === $needle);

}

php

根據動態網站要求,PHP語言作為一種語言程序,其專用性逐漸在應用過程中顯現,其技術水平的優劣與否將直接影響網站的運行效率。其特點是具有公開的源代碼, 在程序設計上與通用型語言,如C語言相似性較高,因此在操作過程中簡單易懂,可操作性強。

(6)php字元串類擴展閱讀:

PHP參考函數

highlight_file() //函數對文件進行語法高亮顯示。

get_browser() //函數返回用戶瀏覽器的性能。

exit() //函數輸出一條消息,並退出當前腳本

eval() //函數把字元串按照 PHP 代碼來計算。

die() //函數輸出一條消息,並退出當前腳本。

defined() //函數檢查某常量是否存在。

define() //函數定義一個常量。

constant() //函數返回常量的值。

zip_entry_read() //函數從打開的 zip 檔案項目中獲取內容。

zip_entry_open() //函數打開一個 ZIP 檔案項目以供讀取。

『柒』 如何將phpinfo字元串類型轉換

php中iconv、mb_convert_encoding函數字元編碼轉換詳解如下:

iconv函數庫能夠完成各種字元集間的轉換,是php編程中不可缺少的基礎函數庫。

  • 用法如下:

$string="親愛的朋友歡迎訪問博客,希望給您帶來一點點的幫助!";
iconv("utf8","gbk",$string)//將字元串string編碼由utf8轉變成gbk;
  • 擴展如下:

echo[MathProcessingError]str=′好,歡迎訪問博客,該博客記錄一個程序員的成長過程!′;echo′<br/>′;echoiconv(′GB2312′,′UTF−8′,str);//將字元串的編碼從GB2312轉到UTF-8
echo'<br/>';
echoiconv_substr([MathProcessingError]str,1,1,′UTF−8′);//按字元個數截取而非位元組printr(iconvgetencoding());//得到當前頁面編碼信息echoiconvstrlen(str,'UTF-8');//得到設定編碼的字元串長度
//也有這樣用的
[MathProcessingError]content=iconv("UTF−8","gbk//TRANSLIT",content);
  • 備註:

1、iconv不是php的默認函數,也是默認安裝的模塊。需要安裝才能用的。

如果是windows2000+php,你可以修改php.ini文件,將extension=php_iconv.dll前的";"去掉,同時你要你的原php安裝文件下的iconv.dll到你的winnt/system32下(如果你的dll指向的是這個目錄,我本地的沒有操作這一步)

linux環境下,用靜態安裝的方式,在configure時加多一項 --with-iconv就可以了,phpinfo看得到iconv的項。(Linux7.3+Apache4.06+php4.3.2);

到此php中的iconv 介紹完畢

2、用iconv函數把抓取來過的utf-8編碼的頁面轉成gb2312, 發現只有用iconv函數把抓取過來的數據一轉碼數據就會無緣無故的少一些。原因是這樣的:

string iconv ( string in_charset, string out_charset, string str )

注意:第二個參數,除了可以指定要轉化到的編碼以外,還可以增加兩個後綴://TRANSLIT 和 //IGNORE,其中 //TRANSLIT 會自動將不能直接轉化的字元變成一個或多個近似的字元,//IGNORE 會忽略掉不能轉化的字元,而默認效果是從第一個非法字元截斷。 被截斷了,當然就會少了;

可以這樣修改iconv("UTF-8","GB2312//IGNORE",$string) 會忽略掉不能轉化的字元;

  • 附加:

  1. PHP中的mb_convert_encoding與iconv函數介紹

  2. mb_convert_encoding這個函數是用來轉換編碼的,和iconv函數差不多。

  3. 英文一般不會存在編碼問題,只有中文數據才會有這個問題。比如用Zend Studio或Editplus寫程序時,用的是gbk編碼,如果數據需要入資料庫,而資料庫的編碼為utf8時,這時就要把數據進行編碼轉換,不然進到資料庫就會變成亂碼。

  4. 做一個GBK To UTF-8

    <?php
    header("content-Type:text/html;charset=Utf-8");//設置字元的編碼是utp-8
    echomb_convert_encoding("你系我的友仔","UTF-8","GBK");
    ?>
  5. 再做GB2312 To Big5

<?php
header("content-Type:text/html;charset=big5");
echomb_convert_encoding("朋友","big5","GB2312");
?>

不過要使用上面的函數需要安裝但是需要先enable mbstring 擴展庫,道理還是一樣的,修改php.ini。

PHP中的另外一個函數iconv也是用來轉換字元串編碼的,與上函數功能相似。

下面還有一些詳細的例子:

iconv—
(PHP4>=4.0.5,PHP5)
mb_convert_encoding—Convertcharacterencoding
(PHP4>=4.0.6,PHP5)
  • 用法:

  1. stringmb_convert_encoding(stringstr,stringto_encoding[,mixedfrom_encoding]
  2. 需要先enable mbstring 擴展庫,在 php.ini里將; extension=php_mbstring.dll 前面的 ;

  3. 去掉mb_convert_encoding 可以指定多種輸入編碼,它會根據內容自動識別,但是執行效率比iconv差太多;

  4. 那為何還要講解 這個 mb_convert_encoding()函數呢?答案如下:

  5. 發現iconv在轉換字元」—」到gb2312時會出錯,如果沒有ignore參數,所有該字元後面的字元串都無法被保存。不管怎麼樣,這個」—」都無法轉換成功,無法輸出。

  6. 另外mb_convert_encoding沒有這個bug.

一般情況下用 iconv,只有當遇到無法確定原編碼是何種編碼,或者iconv轉化後無法正常顯示時才用mb_convert_encoding 函數.

『捌』 php的關於字元串類型的變數的賦值問題,謝謝

1.如果確實如標題所說,這是個關於php語言變數的問題,那麼,貌似這兩句代碼的語法都不太正確:從語法來看,這兩句代碼,貌似應該是javascript的代碼。

php的變數定義,一般變數名前加 $ 符號,一般前面也沒有var關鍵字:
var string=「abc」; =》 $string = "abc";

var string=new String("abc");
這個因為在php里沒有 string 對象,所以並不能進行類似的寫法。

2. 如果你寫兩句代碼,是javascript的代碼,那麼,兩者的區別在於:

var string=「abc」; 這里的string是個字元串變數。
var string=new String("abc"); 這里的string是個對象的實例。

『玖』 php 怎麼處理字元串

大家通過對PHP的學習,可以運用這一高級語言創建一個性能較高的網站。對於初學者來說,對於PHP字元串mbstring還是比較陌生的,下面我們就來介紹一下PHP字元串mbstring的具體應用。

多國語言並存就意味著多位元組,PHP內置的字元串長度函數strlen無法正確處理中文字元串,它得到的只是字元串所佔的位元組數。對於GB2312的中文編碼,strlen得到的值是漢字個數的2倍,而對於UTF-8編碼的中文,就是1~3倍的差異了。

採用PHP字元串mbstring可以較好地解決這個問題。mb_strlen的用法和strlen類似,只不過它有第二個可選參數用於指定字元編碼。例如得到UTF-8的字元串$str長度,可以用mb_strlen($str,』UTF-8′)。如果省略第二個參數,則會使用PHP的內部編碼。內部編碼可以通過mb_internal_encoding()函數得到,設置有兩種方式:

1. 在php.ini中設置mbstring.internal_encoding = UTF-8

2. 調用mb_internal_encoding(」GBK」)

除了PHP字元串mbstring,還有很多切割函數,其中mb_substr是按字來切分字元,而mb_strcut是按位元組來切分字元,但是都不會產生半個字元的現象。而且從函數切割對長度的作用也不同,mb_strcut的切割條件是小於strlen, mb_substr是等於strlen,看下面的例子,

< ? $str = 『我是一串比較長的中文-www.jefflei.com』; echo 「mb_substr:」 . mb_substr($str, 0, 6, 『utf-8′); echo 」 「; echo 「mb_strcut:」 . mb_strcut($str, 0, 6, 『utf-8′); ?>

輸出如下:

mb_substr:我是一串比較

mb_strcut:我是

需要注意的是,PHP字元串mbstring並不是PHP核心函數,使用前需要確保在php編譯模塊時加入mbstring的支持:

(1)編譯時使用–enable-mbstring

(2)修改/usr/local/lib/php.inc

default_charset = 「zh-cn」

mbstring.language = zh-cn

mbstring.internal_encoding =zh-cn

PHP字元串mbstring類庫內容比較多,還包括mb_ send_ mail 之類的email處理函數等

熱點內容
安川編程招工 發布:2024-04-30 15:21:31 瀏覽:641
lru缺頁演算法 發布:2024-04-30 15:19:29 瀏覽:496
伺服器內網ip和外網ip是什麼 發布:2024-04-30 15:13:13 瀏覽:752
c編譯的產物 發布:2024-04-30 15:07:07 瀏覽:58
sql2000服務 發布:2024-04-30 15:00:05 瀏覽:530
如何導出土豆緩存視頻 發布:2024-04-30 14:39:36 瀏覽:470
圖論環的演算法 發布:2024-04-30 14:39:35 瀏覽:641
演算法課項目 發布:2024-04-30 14:23:34 瀏覽:245
路由器無線密碼從哪裡看 發布:2024-04-30 13:41:07 瀏覽:765
安卓由哪個公司提供 發布:2024-04-30 12:27:03 瀏覽:417