1. php花括号,大括号{}几种使用方法的分析
一、在函数或流程控制语句中的使用
例如:function test(){}、if(){}、foreach(){}
在函数中常用的方法就是保持数据在作用域范围的执行
二、$str{4}在字符串的变量的后面跟上{}大括号或者中括号[],里面填写了数字,这里是吧字符串变量当成数组处理。举个例子如下:
<?php
$str='phpernote.com';
echo $str{0}; // 输出 p
echo $str[1]; // 输出 h
$str='000';
$str{0}='1';
echo $str; // 输出 100
注意:利用这一特性可用来检查某个字符串是否满足多少长度,使用 isset 的方式替代 strlen 函数,因为 isset 是语言结构,strlen 是函数,所以使用 isset 比使用 strlen 效率更高。比如判断一个字符串的长度是否小于 5,如下:
if(!isset($str{5})) 比 if(strlen($str)<5) 更好。
三、对于可变变量使用大括号,比如:{$val},这时候大括号就是告诉PHP,括起来的部分要当成变量处理。如下例子:
<?php
$array=array('www','name'=>'phpernote','com');
echo "$array['name']";//用此句会报语法错误
echo "{$array['name']}";//此句正常,大括号内的字符将作为变量来处理
注意:${$a[1]} 与${$a}[1] 是完全不同的:
${$a[1]} 这里$a[1]是一个变量;
${$a}[1] 这里$a是一个变量;
这种写法的好处就是在字符串中引用变量的时候,这样就可以不使用.运算符,从而减少代码的输入量。
2. 循环控制语句PHP有哪些类型
while
只要指定的条件成立,则循环执行代码块
do...while
首先执行一次代码块,然后在指定的条件成立时重复这个循环
for
循环执行代码块指定的次数
foreach
根据数组中每个元素来循环代码块
3. php批量执行sql语句怎么写
php中利用数组用Mysql_query批量执行SQL语句。
参考示例如下:
思路:这里采用一个数组.用explode 函数,将$query语句按照”;”炸开,然后循环执行即可:
$query = 'delete from ecs_goods_attr where attr_id=11 and goods_id=22;
Insert into ecs_goods_attr (goods_attr_id,goods_id,attr_id,attr_value,attr_price)values(Null,33,138,"胆略",0);
update ecs_goods set goods_number=10,shop_price=55 where goods_id=33;'
$query_e = explode(';','$query');
foreach ($query_e as $k =>$v)
{
mysql_query($query_e[$k]);
}
这样 $query语句就被批量的执行了。
4. PHP循环控制语句
<?php
function example($num){
$res = 1;
$str = "";
for( $i=1;$i<=3;$i++){
$str .= $num." * ";
$res *= $num;
}
echo rtrim($str,' * ')."=".$res;
}
example(15);
echo "<hr/>";
while(true){
$rand = rand(0,100);
if( $rand===10 ){
echo PHP_EOL."变量等于".$rand.",终止循环";
break;
}else{
echo $rand.' ';
}
}
5. 使用php循环语句输出一个5行*4列的表格,并且在每行输出1,2,3,4,5
<tablewidth="100%"border="2"cellspacing="2"cellpadding="2">
<tr>
<tdcolspan="4"style="background:#9C0;color:#333;text-align:center">方法一</td>
</tr>
<?
//方法1for循环已知循环次数
$i=1;
for($i;$i<6;$i++){
?>
<tr>
<tdwidth="17%"><?echo$i;?></td>
<tdwidth="22%"> </td>
<tdwidth="28%"> </td>
<tdwidth="33%"> </td>
</tr>
<?}?>
<tr>
<tdcolspan="4"style="background:#9C0;color:#333;text-align:center">方法二</td>
</tr>
<tr>
<?
//方法2数组循环
$arr=array(1,2,3,4,5);
foreach($arras&$value){?>
<td><?echo$value;?></td>
<td> </td>
<td> </td>
<td> </td>
</tr><?}?>
</table>
6. php里面require和include的区别
require 的使用方法如 require("MyRequireFile.php"); 。这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。
include 使用方法如 include("MyIncludeFile.php"); 。这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。
他们两个的用途是完全一样的,不一定非得哪个放在最前面哪个放在中间。他们最根本的区别在于错误处理的方式不一样。
require一个文件存在错误的话,那么程序就会中断执行了,并显示致命错误
include一个文件存在错误的话,那么程序不会中端,而是继续执行,并显示一个警告错误。
1. include有返回值,而require没有。
2. include()包括并运行指定文件 在处理失败时include() 产生一个警告,被导入的程序代码都会被执行,而且这些程序在执行的时候会拥有和源文件中呼叫到include()语句的位置相同的变量范围。你可以导入同一个服务器中的静态页面。
3. require()会将目标文件的内容读入,并且把自己本身代换成这些读入的内容 在处理失败时require() 则导致一个致命错。
这个读入并且代换的动作是在PHP引擎编译你的程序代码的时候发生的,而不是发生在PHP引擎开始执行编译好的程序代码的时候(PHP 3.0引擎的工作方式是编译一行执行一行,但是到了PHP 4.0以后就有所改变了,PHP 4.0是先把整个程序代码全部编译完成后,再将这些编译好的程序代码一次执行完毕,在编译的过程中不会执行任何程序代码)。require()通常来导入静态的内容,而include()则适合用导入动态的程序代码。
4. require是无条件包含也就是如果一个流程里加入require,无论条件成立与否都会先执行require。
5. require通常放在PHP程序的最前面,PHP程序在执行前,就会先读入require所指定引入的文件,使它变成PHP程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。
6. include一般是放在流程控制的处理部分中PHP程序网页在读到include的文件时,才将它读进来。这种方式可以把程序执行时的流程简单化。