1 2 $i=20; 3 function aa(){ 4 // $i=100; 5 echo $i; 6 } 7 aa();//结果不能输出因为$i不是全局变量,不可以在函数中直接使用,又因为此变量在函数中没有声明 8
php打印*
1 function show($len=1,$s='*'){ 2 for($i=0;$i<$len;$i++){ 3 echo $s; 4 } 5 } 6 for($i=0;$i<=30;$i++){ 7 show($i); 8 echo '<br>'; 9 } 10 function show1($len=31,$a='*'){ 11 for($i=30;$i>$len;$i--){ 12 echo $a; 13 } 14 } 15 for($i=30;$i>=0;$i--){ 16 show($i); 17 echo '<br>'; 18 } 19
全局变量
$f=300; define('aa', 1);//常量 是全局变量可以调用 function bb(){ global $f; //注册全局变量不然$f无法输出 echo $f; echo aa; } bb();
function cc(){ global $y;//注册全局变量,如果存在就使用,如果不存在就声明 $y=20; } cc(); echo $y;
function cc(){ $y=20; echo $y;//这样可以输出$i } cc(); echo $y;//这样无法输出$y
if (1==1){ $i='ok';//$i是全局函数可以输出 } echo $i;
//声明函数时有默认值的必须放在后面 function cc($b,$a=5){ return $b+$a; } echo cc(6);
echo function_exists('dd');//判断dd函数是否存在,如果存在则返回1如果不存在则返回空
function bb(){ return array(10,20,50,'hello'); } $y=bb(); echo '<pre>'; //数组输出换行 print_r($y);//数组要用print_r输出
function bb(){ return array(10,20,50,'hello'); } $y=bb()[1]; //可以输出结果20 echo '<pre>'; //数组输出换行 print_r($y);//数组要用print_r输出
求出最大值
function mm(){ echo func_num_args();//输出2当前函数的数组的值有多少个 echo func_get_arg(0);//输出hello返回当前函数调用时的参数的第一个参数的实际值 } mm('hello',20); //求出最大值 function mym(){ $t=func_get_arg(0); for ($i=1;$i<func_num_args($i);$i++){ if($t<func_get_arg($i)){ $t=func_get_arg($i); } } return $t; } echo mym(10,20,30,40,50,60,44,80,100,1000);
递归输出1-10
$i=0; function yy(){ global $i; echo ++$i.'<br>'; if($i<10){ yy(); } } yy();
输出1-600
$i=0; function yy($n=10){ global $i; echo ++$i.'<br>'; if($i<$n){ yy($n); } } yy(600);
当出现递归报错时可以去php.ini文件中拉倒最后,查找到
;[Xdebug]
;zend_extension="php_xdebug-2.3.1-5.6-vc11.dll"
此两行注释即可使用
唯一id
echo uniqid();//唯一的结果:553da390e05e0 每刷新一次的结果不同
在网页上查看源代码
show_source('arry.php'); //查看一个程序的源代码
highlight_file('arry.php');//和show_source是同样的效果
如果在服务器上直接查看.phps 源码文件
//apache httpd.conf AddType application/x-httpd-php-source .phps
把php里面的扩展名改为phps 如pdo.phps
在浏览器中输入http://www.oop.com/pdo.phps即可出现pdo.phps的源代码