Apabila kita melangkah ke peringkat pembangunan PHP, kita mesti sentiasa bertanya kepada diri sendiri, terus belajar, dan terus meringkaskan Hanya dengan cara ini kita boleh pergi lebih jauh di jalan pembangunan PHP Hari ini, Berdasarkan contoh pembangunan peribadi, kami telah merumuskan beberapa kaedah umum umum untuk membolehkan rakan kongsi baru menjalankan aktiviti amalan pembangunan dengan lebih pantas semasa proses pembangunan:
1. Gunakan kaedah awam msubstr untuk memintas rentetan Cina Jika terlalu panjang, gunakan elipsis sebaliknya:
Senario penggunaan:
Menggunakan kaedah awam jenis ini biasanya melibatkan memuat naik beberapa data artikel ke editor di latar belakang, dan data yang sepadan perlu dipaparkan di bahagian hadapan Kadangkala, Apabila data latar belakang terlalu panjang dan ruang yang dipaparkan pada bahagian hadapan tidak mencukupi untuk memaparkan semua data, bahagian yang berlebihan digantikan dengan elips Ini boleh menjadikan paparan data bahagian hadapan itu cantik dan ringkas, memberikan perasaan yang menggembirakan .
Paparan kod:
/** * 截取中文字符串,过长的使用省略号代替 */ function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true){ $str = preg_replace("/<a[^>]*>/i", "", $str); $str = preg_replace("/<\/a>/i", "", $str); $str = preg_replace("/<div[^>]*>/i", "", $str); $str = preg_replace("/<\/div>/i", "", $str); $str = preg_replace("/<!--[^>]*-->/i", "", $str);//注释内容 $str = preg_replace("/style=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/class=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/id=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/lang=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/width=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/height=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/border=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/face=.+?['|\"]/i",'',$str);//去除样式 $str = preg_replace("/face=.+?['|\"]/",'',$str);//去除样式只允许小写正则匹配没有带 i if(function_exists("mb_substr")){ $slice= mb_substr($str, $start, $length, $charset); }elseif(function_exists('iconv_substr')) { $slice= iconv_substr($str,$start,$length,$charset); }else{ preg_match_all($re[$charset], $str, $match); $slice = join("",array_slice($match[0], $start, $length)); } $fix=''; if(strlen($slice) < strlen($str)){ $fix='...'; } return $suffix ? $slice.$fix : $slice; }
2. penyulitan enctype:
Senario penggunaan:
Penyulitan semula peraturan tetapan pemadanan kata laluan hadapan atau peraturan pemadanan kata laluan belakang untuk mengelakkan penggodam lain daripada menggunakannya secara universal Mekanisme pemadanan kata laluan digunakan untuk penutupan laman web dan tugas lain.
Paparan kod:
/** * 公共方法 * 优化md5加密: */ function enctype($password) { return md5($password . C('MD5_SUFFIX')); }
Nota:
Projek C('MD5_SUFFIX') adalah untuk membaca konfigurasi pemalar "MD5_SUFFIX", pemalar boleh ditetapkan sendiri.
3 Gantikan 4 digit tengah nombor telefon mudah alih dengan *
Senario penggunaan:
Selepas pengguna mendaftarkan akaun dengan nombor telefon bimbit di laman web, untuk melindungi keselamatan maklumat pengguna, gantikan 4 digit tengah nombor telefon bimbit dengan *, supaya nombor telefon bimbit tidak akan dipaparkan sepenuhnya, yang melindungi keselamatan maklumat pengguna pada tahap tertentu.
Paparan kod:
/** * 将手机号中间4位替换为* */ function suohao($phone){ $p = substr($phone,0,3)."****".substr($phone,7,4); return $p; }
4 Sahkan bahawa nombor telefon bimbit adalah betul:
Senario penggunaan:
Sahkan sama ada nombor telefon mudah alih yang diisi oleh pengguna adalah betul apabila pengguna mendaftar tapak web, yang memudahkan penyelenggaraan data kemudian oleh kakitangan bahagian belakang kami .
Paparan kod:
/** * 验证手机号是否正确 * @author honfei * @param number $mobile */ function isMobile($mobile) { if (!is_numeric($mobile)) { return false; } return preg_match('#^13[\d]{9}$|^14[5,7]{1}\d{8}$|^15[^4]{1}\d{8}$|^17[0,6,7,8]{1}\d{8}$|^18[\d]{9}$#', $mobile) ? true : false; }
5 Sahkan sama ada kandungan input ialah nombor tulen:
Senario penggunaan:
Pengesahan berfungsi apabila pengguna menyerahkan parameter yang mestilah item angka Selepas pengesahan, maklumat maklum balas yang sepadan boleh diberikan kepada pengguna untuk membantu pengguna memproses Penyerahan data Kesahan.
Paparan kod:
/** * 验证输入的内容是否为纯数字 * @author wdy * @param number $mobile */ function isNumeric($number) { if (!is_numeric($number)) { return false; } return preg_match('/^\d+$/i', $number) ? true : false; }
6 Sahkan bahawa e-mel itu betul:
Senario penggunaan:
Apabila pengguna mendaftar atau mengikat maklumat e-mel, ketulenan e-mel perlu disahkan, supaya pengguna boleh menerima pengesahan yang sepadan dengan cepat dan berkesan apabila mendapatkan kata laluan mereka nanti.
Paparan kod:
/** * 验证邮箱是否正确 * @author wdy * @param 18738536986@163.com $email */ function isEmail($email){ $mode = '/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/'; if(preg_match($mode,$email)){ return true; }else{ return false; } }
7 Susunan semula rekursif tatasusunan pengelasan tak terhingga:
< 🎜. >Senario penggunaan:
Klasifikasi pusat membeli-belah biasanya menggunakan kaedah ini, yang boleh membaca dan memaparkan data klasifikasi pusat membeli-belah dengan berkesan, yang mudah untuk penyelenggaraan peribadi dan pengalaman pengguna.Paparan kod:
//递归重新排序无限极分类数组 function recursive($array,$pid=0,$level=0){ //接收传递过来的数组 $arr = array(); foreach ($array as $value) { if($value['pid'] == $pid){ //定义分类级别 $value['level'] = $level; //定义分类分隔符号 $value['html'] = str_repeat('-', $level); //$arr[]来存储$value $arr[] = $value; //array_merge():函数把一个或多个数组合并为一个数组。 $arr = array_merge($arr,recursive($array,$value['id'],$level+1)); } } return $arr; }
8 Dapatkan ID semua subkategori kategori:
Senario penggunaan:
Bacaan pantas kategori pusat membeli-belah boleh menyepadukan dan memaparkan data maklumat terperingkat dengan cepat, dan pada masa yang sama memudahkan pengalaman akses pantas pengguna.Paparan kod:
Atas ialah kandungan terperinci Kaedah awam contoh pembangunan PHP [penjelasan kod terperinci]. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!