Share a complete list of commonly used PHP tools in your own projects, share a complete list of PHP tools_PHP Tutorial
Release: 2016-07-12 08:54:03
Original
846 people have browsed it
Share a complete list of commonly used PHP tools in your own projects, share a complete list of PHP tools
Php code
-
-
- class Helper
- {
-
- public static function getOS(){
- if(PATH_SEPARATOR == ':'){
- return 'Linux';
- }else{
- return 'Windows';
- }
- }
-
- public static function microtime_float() {
- list ( $usec, $sec ) = explode ( " ", microtime () );
- return (( float ) $usec ( float ) $sec);
- }
-
- public static function truncate_utf8_string($string, $length, $etc = '...') {
- $result = '';
- $string = html_entity_decode ( trim ( strip_tags ( $string ) ), ENT_QUOTES, 'UTF-8' );
- $strlen = strlen ( $string );
- for($i = 0; (($i $strlen) && ($length > 0)); $i ) {
- if ($number = strpos ( str_pad ( decbin ( ord ( substr ( $string, $i, 1 ) ) ), 8, '0', STR_PAD_LEFT ), '0' )) {
- if ($length
- break;
- }
- $result .= substr ( $string, $i, $number );
- $length -= 1.0;
- $i = $number - 1;
- } else {
- $result .= substr ( $string, $i, 1 );
- $length -= 0.5;
- }
- }
- $result = htmlspecialchars ( $result, ENT_QUOTES, 'UTF-8' );
- if ($i $strlen) {
- $result .= $etc;
- }
- return $result;
- }
-
- public static function scanfDir($dir='', $all = false, &$ret = array()){
- if ( false !== ($handle = opendir ( $dir ))) {
- while ( false !== ($file = readdir ( $handle )) ) {
- if (!in_array($file, array('.', '..', '.git', '.gitignore', '.svn', '.htaccess', '.buildpath','.project'))) {
- $cur_path = $dir . '/' . $file;
- if (is_dir ( $cur_path )) {
- $ret['dirs'][] =$cur_path;
- $all && self::scanfDir( $cur_path, $all, $ret);
- } else {
- $ret ['files'] [] = $cur_path;
- }
- }
- }
- closedir ( $handle );
- }
- return $ret;
- }
-
- public static function sendMail($toemail = '', $subject = '', $message = '') {
- $mailer = Yii::createComponent ( 'application.extensions.mailer.EMailer' );
-
- $mailer->SetLanguage('zh_cn');
- $mailer->Host = Yii::app()->params['emailHost'];
- $mailer->Port = Yii::app()->params['emailPort'];
- $mailer->Timeout = Yii::app()->params['emailTimeout'];
- $mailer->ContentType = 'text/html';
- $mailer->SMTPAuth = true;
- $mailer->Username = Yii::app()->params['emailUserName'];
- $mailer->Password = Yii::app()->params['emailPassword'];
- $mailer->IsSMTP ();
- $mailer->From = $mailer->Username;
- $mailer->FromName = Yii::app()->params['emailFormName'];
- $mailer->AddReplyTo ( $mailer->Username );
- $mailer->CharSet = 'UTF-8';
-
- $modelMail = new MailLog ();
- $modelMail->accept = $toemail;
- $modelMail->subject = $subject;
- $modelMail->message = $message;
- $modelMail->send_status = 'waiting';
- $modelMail->save ();
-
- $mailer->AddAddress ( $toemail );
- $mailer->Subject = $subject;
- $mailer->Body = $message;
- if ($mailer->Send () === true) {
- $modelMail->times = $modelMail->times 1;
- $modelMail->send_status = 'success';
- $modelMail->save ();
- return true;
- } else {
- $error = $mailer->ErrorInfo;
- $modelMail->times = $modelMail->times 1;
- $modelMail->send_status = 'failed';
- $modelMail->error = $error;
- $modelMail->save ();
- return false;
- }
- }
-
- public static function utf8_gb2312($str, $default = 'gb2312')
- {
- $str = preg_replace("/[x01-x7F] /", "", $str);
- if (emptyempty($str)) return $default;
- $preg = array(
-
- );
$default == 'gb2312') {
-
-
} else {
}
- if (!preg_match($preg[$default], $str)) {
- return $option;
- }
- $str = @iconv($default, $option, $str);
- //Cannot be converted to $option, indicating that the original one is not $default
if (- empty
empty(- $str)) {
return $option;
-
}
- return $default;
}
-
- public static function safeEncoding($string,$outEncoding = 'UTF-8')
- {
- $encoding = "UTF-8";
- for($i = 0; $i strlen ( $string ); $i ) {
- if (ord ( $string {$i} )
- continue;
- if ((ord ( $string {$i} ) & 224) == 224) {
-
- $char = $string { $i};
- if ((ord ( $char ) & 128) == 128) {
-
- $char = $string { $i};
- if ((ord ( $char ) & 128) == 128) {
- $encoding = "UTF-8";
- break;
- }
- }
- }
- if ((ord ( $string {$i}) & 192) == 192) {
-
$char =
$string { - $i};
-
}
- if ($encoding) ==
strtoupper ( - $outEncoding))
-
return
$string; -
-
- else
-
return @iconv ($encoding, $outEncoding, $string);
} -
/**
- * Returns all values of a key name in the two-dimensional array
- * @param input $array
* @param string $key
* @return array
-
- */
- public function array_key_values(
$array =- array(), '')
-
{ -
$ret =
array(); -
foreach((array)$array as $k=>$v){
-
- $ret[$k] = $v[$key];
-
}
return $ret;
}
-
- public static function is_writeable($file) {
- if (is_dir($file)){
- $dir = $file;
- if ($fp = @fopen("$dir/test.txt", 'w')) {
- @fclose($fp);
- @unlink("$dir/test.txt");
- $writeable = 1;
- } else {
- $writeable = 0;
- }
- } else {
- if ($fp = @fopen($file, 'a ')) {
- @fclose($fp);
- $writeable = 1;
- } else {
- $writeable = 0;
- }
- }
- return $writeable;
- }
-
- static public function byteFormat( $size, $dec = 2 ) {
- $a = array ( "B" , "KB" , "MB" , "GB" , "TB" , "PB" );
- $pos = 0;
- while ( $size >= 1024 ) {
- $size /= 1024;
- $pos ;
- }
- return round( $size, $dec ) . " " . $a[$pos];
- }
-
- static public function selected( $string, $param = 1, $type = 'select' ) {
- $true = false;
- if ( is_array( $param ) ) {
- $true = in_array( $string, $param );
- }elseif ( $string == $param ) {
- $true = true;
- }
- $return='';
- if ( $true )
- $return = $type == 'select' ? 'selected="selected"' : 'checked="checked"';
- echo $return;
- }
-
- static public function downloadImage($url, $filepath, $filename) {
-
- $responseHeaders = array();
-
- $originalfilename = '';
-
- $ext = '';
- $ch = curl_init($url);
-
- curl_setopt($ch, CURLOPT_HEADER, 1);
-
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
-
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
-
- curl_setopt($ch, CURLOPT_MAXREDIRS, 3);
-
- $html = curl_exec($ch);
-
- $httpinfo = curl_getinfo($ch);
- curl_close($ch);
- if ($html !== false) {
- // Separate the header and body of the response. Since the server may use 302 jumps, the string needs to be separated into 2 substrings with the number of jumps
🎜>-
- $header = $httpArr[count($httpArr) - 2];
-
- $body = $httpArr[count($httpArr) - 1];
- $header.="rn";
-
- preg_match_all('/([a-z0-9-_] ):s*([^rn] )rn/i', $header, $matches);
- if (!emptyempty($matches) && count($matches) == 3 && !emptyempty( $matches[1]) && !emptyempty($matches[1])) {
- for ($i = 0; $i count($matches[1]); $i ) {
- if (array_key_exists($i, $matches[2])) {
- $responseHeaders[$matches[1][$i]] = $matches[2][$i]; >
-
- if (0 '{(?:[^/\\] ).(jpg|jpeg|gif|png|bmp)$}i',
- $url ,
$matches)) {
-
$originalfilename = $matches[0];
$ext =
$matches[1]; -
} else {
-
if (array_key_exists('Content-Type',
$responseHeaders)) {
-
i', $responseHeaders['Content-Type'], $extmatches)) {
-
//Save the file -
-
if (!- empty
empty(- $ext)) {
-
//If the directory does not exist, you must create the directory first
if(!is_dir(
$filepath)){
- mkdir($filepath, 0777, true);
- $filepath .= '/'.$filename.".$ext";
-
-
$local_file = fopen($filepath, 'w');
-
fclose($local_file);
,
'height' => - $sizeinfo[1], 'orginalfilename' => >$filepath, PATHINFO_BASENAME));
- }
return false;
}
-
- public static function ipAccess($ip='0.0.0.0', $arrIP = array()){
- $access = true;
- $ip && $arr_cur_ip = explode('.', $ip);
- foreach((array)$arrIP as $key=> $value){
- if($value == '*.*.*.*'){
- $access = false;
- break;
- }
- $tmp_arr = explode('.', $value);
- if(($arr_cur_ip[0] == $tmp_arr[0]) && ($arr_cur_ip[1] == $tmp_arr[1])) {
-
- if(($arr_cur_ip[2] == $tmp_arr[2]) || ($tmp_arr[2] == '*')){
-
- if(($arr_cur_ip[3] == $tmp_arr[3]) || ($tmp_arr[3] == '*')){
-
- $access = false;
- break;
- }
- }
-
} -
- return $access;
} -
- /**
- * @param string $string Original text or cipher text
- * @param string $operation operation (ENCODE | DECODE), the default is DECODE
- * @param string $key key
- * @param int $expiry Ciphertext validity period, valid when encrypted, unit seconds, 0 means permanent validity
- * @return string The processed original text or the cipher text processed by base64_encode
- *
- * @example
- *
- * $a = authcode('abc', 'ENCODE', 'key');
- * $b = authcode($a, 'DECODE', 'key'); // $b(abc)
- *
- * $a = authcode('abc', 'ENCODE', 'key', 3600);
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
Latest Articles by Author
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31