php字符串参数
1. php处理由URL传入的字符串参数(post.php)
post是邮件的意思,跟这个有什么关系?
回答:只是一个文件名。什么都不是,这个页面只是用来获取$_GET['entry']后读取对应的日志
url表现在哪里?
回答:这个不明白是什么意思
content是内容的意思,在这里是什么?把它放在$path前边是什么意思?
回答:这个跟英文单词的意思没什么关系,只是形象一点而已,这里只是一个文件夹的名称
entry进入、入口、登陆,在这里的作用是?
回答:只是传参的参数名称
200712-02-215307这段,
0,6是读取6个字符,是200712-吗?
回答:不对,从字符串的下标0开始,截取长度为6,返回200712
7,9,是从02的0读取到-吗?
回答:原理同上,
建议好好看看手册
2. php如何把转换字符串里面的参数
你的意思是要将{ }里面的东西,当做表达式计算出来吧。
第一步
正则匹配出{}里面的内容
第二部
查看手册,eval函数应该能解决你的问题
3. 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处理函数等
4. PHP处理由URL传入的字符串参数(post.php)
1、POST 这里表现的就只是个文件名
2、url表示链接到这个页面的地址 如/post?entry = XXX
3、content确实是内容的意思,但是并不是变量,只是个名称。放在$PATH前面也只是个content+路径而已
4、Entry 不过只URL传过来的参数如/post?entry = XXX 那么$_GET['entry'] 就等于XXX
5、恩
5. php查询字符串中的参数名称表示什么,可不可以任意设置比如<a href="detail.php
可以,但是在php处理代码中同样要一致
比如你要吧$_GET['id']也要改成$_GET['id1']
6. PHP字符串长度计算 - strlen()函数使用介绍
strlen()函数和mb_strlen()函数
在PHP中,函数strlen()返回字符串的长度。函数原型如下:
复制代码
代码如下:
int
strlen(string
string_input);
参数string_input为要处理的字符串。
strlen()函数返回字符串所占的字节长度,一个英文字母、数字、各种符号均占一个字节,它们的长度均为1。一个中午字符占两个字节,所以一个中午字符的长度是2。例如
复制代码
代码如下:
<?php
echo
strlen("www.sunchis.com");
echo
strlen("三知开发网");
?>
“echo
strlen("www.sunchis.com");”的运行结果:15
“echo
strlen("三知开发网");”的运行结果:15
这里有一个疑问,一个中文字符不是占2个字节吗?“三知开发网”,明明是五个汉字,运行的结果怎么会是15?
原因出在这里:strlen()计算时,对于一个UTF-8的中文字符,会把它当做长度为3来处理。当出现中英文混排的情况下,怎么准确的计算字符串的长度呢?这里,得引入另外一个函数mb_strlen()。mb_strlen()函数的用法与strlen()几乎一摸一样,只是多了一个指定字符集编码的参数。函数原型为:
复制代码
代码如下:
int
mb_strlen(string
string_input,
string
encode);
PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得到的只是字符串所占的字节数。对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是3倍的差异了(在UTF-8编码下,一个汉字占3个字节)。
因此,下面的代码能准确计算出中文字符串的长度:
复制代码
代码如下:
<?php
$str
=
"三知sunchis开发网";
echo
strlen($str)."<br>";
//结果:22
echo
mb_strlen($str,"UTF8")."<br>";
//结果:12
$strlen
=
(strlen($str)+mb_strlen($str,"UTF8"))/2;
echo
$strlen;
//结果:17
?>
原理分析:
strlen()计算时,对待UTF-8的中文字符长度是3,所以“三知sunchis开发网”的长度为5×3+7×1=22
在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算,所以“三知sunchis开发网”长度为5×1+7×1=12
剩下的就是纯数学问题了,在此就不啰嗦了……
注意:对于mb_strlen($str,'UTF-8'),如果省略第二个参数,则会使用PHP的内部编码。内部编码可以通过mb_internal_encoding()函数得到。需要注意的是,mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函数的问题。
7. PHP中声明参数,可以用字符串拼接的方式吗
php 拼接字符串用的 是 . 而不是+号, +号是js里的.
php 拼接SQL 语句 可以 双引号 里面写 $符号的php ,但是最好 加{} 包裹着php的变量这样 php解析的时候不会出错的 特别是 数组!!! 这个一定的! 不然就错了.
例如 $t = " select * from table where t = '{$t}' or p={$p['dsd']} ";
这样就行了!.
如果是常量老实点 用 . 拼接
8. php,如何把url字符串里面的参数解析出来
//url中传递的参数,get形式$userid = @$_GET['userid'];//你也可以打印出所有的Get参数, 可以更明白其中的奥妙print_r($_GET); //如果是表单/post提交,则用$_POST , 用法和$_GET类似