이 기사에서는 실제 PHP 개발에서 일반적으로 사용되는 몇 가지 기술과 방법을 공유하여 낚시 시간을 늘릴 수 있습니다.
1. 도메인 간 문제 해결
public function __construct() { parent::__construct(); header('Access-Control-Allow-Origin:*'); //跨域 }
2. json_encode 중국어는 트랜스코딩되지 않습니다
die( json_encode( $result,JSON_UNESCAPED_UNICODE ) );
3. rreee
4 . Linux 서버의 php.ini가 오류 프롬프트를 닫으면 결과는 406, 500입니다. 오류 메시지를 인쇄합니다. $users = array(
array('name' => 'xiao1', 'age' => 20),
array('name' => 'xiao2', 'age' => 18),
array('name' => 'xiao3', 'age' => 22)
);
/*按照年龄升序*/
//要将age提取出来存储到一维数组里,然后按照age升序排列
$ages= array_column($users, 'age');
array_multisort($ages, SORT_ASC, $users);
/*先按照年龄升序,再按照姓名降序*/
$ages= array_column($users, 'age');
$names = array_column($users, 'name');
array_multisort($ages, SORT_ASC, $names, SORT_DESC, $users);
5. 목록 사용 ini_set("display_errors", "On");
error_reporting(E_ALL | E_STRICT);
6 array_column()//list使用
public function test(){
list($name, $sex) = $this->getInfo();
echo "姓名:{$name},性别:{$sex}";
}
public function getInfo(){
return ['张三', '男'];
}
//输出:姓名:张三,性别:男
$array = [ ['id'=>'99', 'name'=>'九十九'], ['id'=>'88', 'name'=>'八十八'], ['id'=>'77', 'name'=>'七十七'], ]; $arr1 = array_column($array, 'name'); //输出:array (0 => '九十九',1 => '八十八',2 => '七十七',) $arr2 = array_column($array, 'name', 'id'); //输出:array ( 99 => '九十九', 88 => '八十八', 77 => '七十七',)
7. 1차원 배열 중복 제거, 0 삭제, null, 인덱스 재설정$ids = array_column($array, 'id');
$arrayCombine = array_combine($ids, $array);
/*$arrayCombine 输出:
array (
99 => array ( 'id' => '99', 'name' => '九十九', ),
88 => array ( 'id' => '88', 'name' => '八十八', ),
77 => array ( 'id' => '77', 'name' => '七十七', ),
)*/
8. 초를 시, 분, 초로 변환
초를 시, 분, 초로 변환,$array = array(0,1,0,2,null,1,3,4,null,0); $array = array_values(array_unique(array_diff($array, [0, null]))); //去除0,null;去重 var_export($array); /*输出: array ( 0 => 1, 1 => 2, 2 => 3, 3 => 4, ) */
9. 인터페이스는
을 반환합니다. 인터페이스는 일반적으로 1을 반환하고 비정상적으로 -1을 반환합니다. 데이터가 비어 있으면 1이고, -1은 매개변수 예외이거나 논리 오류입니다.10. 소수점 이하 2자리까지 반올림합니다. $r = gmstrftime('%H:%M:%S',(3600*23)+123);
var_export($r);
//输出: '23:02:03'
11. 전화번호 가운데 4자리를 숨깁니다. round($x, 2);
12. 줄 바꿈 변수 PHP_EOL사용 시나리오: 작은 줄 바꿈은 실제로 플랫폼마다 다르게 구현됩니다.
원래 유닉스 세계에서는 줄바꿈을 대체하기 위해 /n을 사용하는데, Windows에서는 그 차이를 반영하기 위해 /r/n을 사용합니다. 더 흥미로운 점은 Mac에서는 /r이 사용된다는 점입니다.
PHP_EOL은 php에서 정의된 변수로, php의 줄바꿈 문자를 나타냅니다.
이 변수는 플랫폼에 따라 변경됩니다. Windows에서는 /r/n, Linux에서는 /n, Mac에서는 /r입니다.
13. PHP는 배열 키가 존재하는지 확인합니다. isset(), array_key_exists(),empty()$num = "13711111111";
$str = substr_replace($num,'****',3,4);
14. 매개변수가 있는 js 파일을 가져오나요?_=1553829159194
때때로 있습니다. 일부 주소 뒤에는 이러한 매개변수가 있습니다. ?_=1553829159194http://***/index/index?_=1553829159194
15. 인터페이스 테스트 도구
추천 인터페이스 테스트 도구 postman16. 마지막 단어가 "area"이면 삭제하세요. $array = ['a'=>'我是第一个', 'b'=>'我是第二个', 'c'=>'我是第三个', 'f' => null];
if(isset($array['a'])) {
echo 'a存在 ';
} else {
echo 'a不存在 ';
}
if(array_key_exists('d', $array)) {
echo 'd存在 ';
} else {
echo 'd不存在 ';
}
if (empty($array['f'])) {
echo 'f不存在';
} else {
echo 'f存在,且不为 null,0,"0",false';
}
//a存在 d不存在 f不存在
17. 페이지 내용이 다음과 같다고 가정합니다.
백그라운드에서 반환된 데이터 구조:$distName = '南山区'; $lastChar = mb_substr($distName, -1); if($lastChar=='区'){ $lastChar = mb_substr($distName, 0, -1); } echo $lastChar;
{"eat":["大米","小麦"],"drink":["水","茶"]}
18. 0777 디렉터리를 만들고 mkdir과 chmod를 함께 사용하세요
mkdir을 사용하여 생성하는 것은 Windows에서는 문제가 없지만 mkdir을 사용하여 생성합니다. Linux에는 폴더가 나타납니다. 0777의 최대 권한이 없으므로 chmod 기능을 다시 사용해야 합니다(chmod 기능은 Linux에서 생성된 폴더의 권한이 부족한 상황을 위한 것입니다)[{"name":"吃的","list":["大米","小麦"]},{"name":"喝的","list":["水","茶"]}]
19 . foreach
code//若目录不存在则创建目录 $filePath = '../file/20900101'; if(@!file_exists($filePath)){ mkdir($filePath, 0777, true); chmod($filePath, 0777); }
$temp = [ [ 'id' => 1, 'name' => 'name1', 'age' => 'age1', 'time' => 'time1' ], [ 'id' => 2, 'name' => 'name2', 'age' => 'age2', 'time' => 'time2' ] ]; # 清空原数据 $data = $temp; foreach ($data as &$value){ $value = []; } echo '<pre class="brush:php;toolbar:false">'; print_r($data); # 重置原数据 $data = $temp; foreach ($data as &$value){ $value = [ 'hobby' => 1 ]; } print_r($data); # 追加原数据 $data = $temp; foreach ($data as &$value){ $value['hobby'] = 1; } print_r($data);
20, url GeneratorArray
(
[0] => Array
(
)
[1] => Array
(
)
)
Array
(
[0] => Array
(
[hobby] => 1
)
[1] => Array
(
[hobby] => 1
)
)
Array
(
[0] => Array
(
[id] => 1
[name] => name1
[age] => age1
[time] => time1
[hobby] => 1
)
[1] => Array
(
[id] => 2
[name] => name2
[age] => age2
[time] => time2
[hobby] => 1
)
)
21 쓰기 인터페이스 빈 배열 반환 개체 양식
$data
为空时强转为 object
类型后,json_encode
的值是{}
,不强转的话则是
public function test() { $url = self::getUrl('http://www.test.com', ['id' => 3, 'other' => '好的']); echo $url . '<br>'; //打印:http://www.test.com?id=3&other=%E5%A5%BD%E7%9A%84 echo urldecode($url); //打印:http://www.test.com?id=3&other=好的 } public function getUrl($apiUrl, $param = []){ $param = http_build_query($param); return $apiUrl . '?' . $param; }
저자 : 의욕있는 동보 스노우이글
추천 학습: "PHP 비디오 튜토리얼"
위 내용은 수집할 가치가 있는 20가지 이상의 일반적인 PHP 팁(공유)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!