Introducing php related syntax skills

jacklove
Release: 2023-03-31 11:04:01
Original
2125 people have browsed it

1. DIRECTORY_SEPARATOR and PATH_SEPARATOR

##DIRECTORY_SEPARATOR: path separator, on Linux '/' On Windows, it is '\'PATH_SEPARATOR: include multiple paths. Under Windows, when you want to include multiple paths, you have to use ";" to separate them, but under Linux, it is Separated using ":".

2.set_include_path and get_include_path

This method can set the include path of the file. After setting, the include file will be searched in include_path first. If it is not searched, it will be searched according to the set path. For example: there are router.php and config.php in the include directory, you can include like this

set_include_path('include');
include('route.php');
include('config.php');
Copy after login

In addition, this method can specify multiple include_paths, use PATH_SEPARATORseparated. For example, there are three directories: ./a ./b ./c. Each directory has files in 3 directories: a.php, b.php, c.php, include.

$inc_path = array('a','b','c');
set_include_path(get_include_path().PATH_SEPARATOR.implode(PATH_SEPARATOR,$inc_path));
include('a.php');
include('b.php');
include('c.php');
Copy after login

To view include_path, you can use get_include_path()

##3.call_user_func and call_user_func_array

call_user_func Call a user-defined method, the first parameter is the name of the method to be called, and the second parameter starts with the calling method to be passed parameters.

function foo($a,$b){
    echo $a.' '.$b;
}
call_user_func('foo',100,200); // 输出:100 200
Copy after login

call_user_func_array

Same as call_user_func, calling a user-defined method. The first parameter is the name of the method to be called. The second parameter is an array. Each Elements are parameters passed to the calling method. This is clearer than call_user_func.

function foo($a,$b){
    echo $a.' '.$b;
}
call_user_func_array('foo', array(100,200)); // 输出:100 200
Copy after login

Call class method

class Foo{
    function show($a, $b){
        echo $a.' '.$b;
    }
}
call_user_func(array('Foo','show'), 100, 200); // 输出 100 200
call_user_func_array(array('Foo','show'), array(300,400)); // 输出 300 400
Copy after login

4.func_num_args and func_get_arg and func_get_args

func_num_args() Returns the number of parameters passed in to the calling method, the type is integerfunc_get_arg( )
Returns the specified parameter valuefunc_get_args()
Returns all parameter values, the type is an array

function foo(){
    $num = func_num_args();
    echo $num; // 2
    for($i=0; $i<$num; $i++){
        echo func_get_arg($i); // 1 2
    }
    print_r(func_get_args()); // Array
}
foo(1,2);
Copy after login

5.

Use PHP to explain js file

Add to apache httpd.conf:

AddType application/x-httpd-php .js
Copy after login

6.Use colons to indicate statements Block

#The writing mode of flow control has two grammatical structures. One uses braces to represent statement blocks, and the other uses colons to represent statement blocks. The former is generally used in pure code, and the latter is generally used when code is combined with HTML.

Braces represent statement blocks

if ($value) {
 // 操作; 
} elseif($value) {
 // 操作; 
} else {
 // 操作;
}
Copy after login

Colons represent statement blocks

Use colon ":" to replace the left brace "{"; use endif; endwhile; endfor; endforeach; and endswitch; to replace the right brace "}".

if ($value) :
  // 操作
elseif ($value) :
  // 操作
else :
  // 操作
endif
Copy after login

7.php How to deal with negative numbers

php The range of int It is

-2147483648 ~ 2147483647, which can be viewed with the constant PHP_INT_MAX.

When the remainder exceeds this range, overflow will occur. This results in a negative number.

<?php
echo 3701256461%62; // -13
?>
Copy after login

即使使用floatval 方法把数值转型为浮点数,但php的求余运算默认使用整形来计算,因此一样有可能出现负数。

解决方法是使用浮点数的求余方法 fmod

<?php
$res = floatval(3701256461);
echo fmod($res,62); // 53
?>
Copy after login

8.使用file_get_contents post 数据

<?php
$api = &#39;http://demo.fdipzone.com/server.php&#39;;
$postdata = array(
    &#39;name&#39; => &#39;fdipzone&#39;,
    &#39;gender&#39; => &#39;male&#39;
);
$opts = array(
    &#39;http&#39; => array(
        &#39;method&#39; => &#39;POST&#39;,
        &#39;header&#39; => &#39;content-type:application/x-www-form-urlencoded&#39;,
        &#39;content&#39; => http_build_query($postdata)
    )
);
$context = stream_context_create($opts);
$result = file_get_contents($api, false, $context);
echo $result;
?>
Copy after login

9.设置时区

ini_set(&#39;date.timezone&#39;,&#39;Asia/Shanghai&#39;);
Copy after login

本篇文章讲解了介绍php相关语法技巧,更多相关内容请关注php中文网。

相关推荐:

如何通过php 根据url自动生成缩略图

介绍php output_buffering 缓存使用的方法

如何通过php 实现BigPipe分块输出

The above is the detailed content of Introducing php related syntax skills. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template