목차
必须收藏的23个php实用代码片段,
您可能感兴趣的文章:
php教程 php手册 必须收藏的23个php实用代码片段,

必须收藏的23个php实用代码片段,

Jun 13, 2016 am 08:46 AM
php 代码片段

必须收藏的23个php实用代码片段,

在编写代码的时候有个神奇的工具总是好的!下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目。
这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧~
1. 发送 SMS
在开发 Web 或者移动应用的时候,经常会遇到需要发送 SMS 给用户,或者因为登录原因,或者是为了发送信息。下面的 PHP 代码就实现了发送 SMS 的功能。
为了使用任何的语言发送 SMS,需要一个 SMS gateway。大部分的 SMS 会提供一个 API,这里是使用 MSG91 作为 SMS gateway。

function send_sms($mobile,$msg)
{
$authKey = "XXXXXXXXXXX";
date_default_timezone_set("Asia/Kolkata");
$date = strftime("%Y-%m-%d %H:%M:%S");
//Multiple mobiles numbers separated by comma
$mobileNumber = $mobile;
      
//Sender ID,While using route4 sender id should be 6 characters long.
$senderId = "IKOONK";
      
//Your message to send, Add URL encoding here.
$message = urlencode($msg);
      
//Define route
$route = "template";
//Prepare you post parameters
$postData = array(
  'authkey' => $authKey,
  'mobiles' => $mobileNumber,
  'message' => $message,
  'sender' => $senderId,
  'route' => $route
);
      
//API URL
$url="https://control.msg91.com/sendhttp.php";
      
// init the resource
$ch = curl_init();
curl_setopt_array($ch, array(
  CURLOPT_URL => $url,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => $postData
  //,CURLOPT_FOLLOWLOCATION => true
));
      
      
//Ignore SSL certificate verification
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
      
      
//get response
$output = curl_exec($ch);
//Print error if any
if(curl_errno($ch))
{
  echo 'error:' . curl_error($ch);
}
      
curl_close($ch);
}
로그인 후 복사

其中“$authKey = "XXXXXXXXXXX";”需要你输入你的密码,“$senderId = "IKOONK";”需要你输入你的 SenderID。当输入移动号码的时候需要指定国家代码 (比如,美国是 1,印度是 91 )。
语法:

<&#63;php
$message = "Hello World";
$mobile = "918112998787";
send_sms($mobile,$message);
&#63;>
로그인 후 복사

2. 使用 mandrill 发送邮件
Mandrill 是一款强大的 SMTP 提供器。开发者倾向于使用一个第三方 SMTP provider 来获取更好的收件交付。
下面的函数中,你需要把 “Mandrill.php” 放在同一个文件夹,作为 PHP 文件,这样就可以使用TA来发送邮件。

function send_email($to_email,$subject,$message1)
{
require_once 'Mandrill.php';
$apikey = 'XXXXXXXXXX'; //specify your api key here
$mandrill = new Mandrill($apikey);
      
$message = new stdClass();
$message->html = $message1;
$message->text = $message1;
$message->subject = $subject;
$message->from_email = "blog@koonk.com";//Sender Email
$message->from_name = "KOONK";//Sender Name
$message->to = array(array("email" => $to_email));
$message->track_opens = true;
      
$response = $mandrill->messages->send($message);
}
로그인 후 복사

$apikey = 'XXXXXXXXXX'; //specify your api key here”这里需要你指定你的 API 密钥(从 Mandrill 账户中获得)。
语法:

<&#63;php
$to = "abc@example.com";
$subject = "This is a test email";
$message = "Hello World!";
send_email($to,$subject,$message);
&#63;>
로그인 후 복사

为了达到最好的效果,最好按照 Mandrill 的教程去配置 DNS。

3. PHP 函数:阻止 SQL 注入
SQL 注入或者 SQLi 常见的攻击网站的手段,使用下面的代码可以帮助你防止这些工具。

function clean($input)
{
  if (is_array($input))
  {
    foreach ($input as $key => $val)
     {
      $output[$key] = clean($val);
      // $output[$key] = $this->clean($val);
    }
  }
  else
  {
    $output = (string) $input;
    // if magic quotes is on then use strip slashes
    if (get_magic_quotes_gpc())
    {
      $output = stripslashes($output);
    }
    // $output = strip_tags($output);
    $output = htmlentities($output, ENT_QUOTES, 'UTF-8');
  }
// return the clean text
  return $output;
}
로그인 후 복사

语法:

<&#63;php
$text = "<script>alert(1)</script>";
$text = clean($text);
echo $text;
&#63;>
로그인 후 복사

4. 检测用户位置
使用下面的函数,可以检测用户是在哪个城市访问你的网站

function detect_city($ip) {
          
    $default = 'UNKNOWN';
      
    $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';
          
    $url = 'http://ipinfodb.com/ip_locator.php&#63;ip=' . urlencode($ip);
    $ch = curl_init();
          
    $curl_opt = array(
      CURLOPT_FOLLOWLOCATION => 1,
      CURLOPT_HEADER   => 0,
      CURLOPT_RETURNTRANSFER => 1,
      CURLOPT_USERAGENT  => $curlopt_useragent,
      CURLOPT_URL    => $url,
      CURLOPT_TIMEOUT     => 1,
      CURLOPT_REFERER     => 'http://' . $_SERVER['HTTP_HOST'],
    );
          
    curl_setopt_array($ch, $curl_opt);
          
    $content = curl_exec($ch);
          
    if (!is_null($curl_info)) {
      $curl_info = curl_getinfo($ch);
    }
          
    curl_close($ch);
          
    if ( preg_match('{<li>City : ([^<]*)</li>}i', $content, $regs) ) {
      $city = $regs[1];
    }
    if ( preg_match('{<li>State/Province : ([^<]*)</li>}i', $content, $regs) ) {
      $state = $regs[1];
    }
      
    if( $city!='' && $state!='' ){
     $location = $city . ', ' . $state;
     return $location;
    }else{
     return $default;
    }
          
  }
로그인 후 복사

语法:

<&#63;php
$ip = $_SERVER['REMOTE_ADDR'];
$city = detect_city($ip);
echo $city;
&#63;>
로그인 후 복사

5. 获取 Web 页面的源代码
使用下面的函数,可以获取任意 Web 页面的 HTML 代码

function display_sourcecode($url)
{
$lines = file($url);
$output = "";
foreach ($lines as $line_num => $line) {
  // loop thru each line and prepend line numbers
  $output.= "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "\n";
}
}
로그인 후 복사

语法:

<&#63;php
$url = "http://blog.koonk.com";
$source = display_sourcecode($url);
echo $source;
&#63;>
로그인 후 복사

6. 计算喜欢你的 Facebook 页面的用户

function fb_fan_count($facebook_name)
{
  $data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name));
  $likes = $data->likes;
  return $likes;
}
로그인 후 복사

语法:

<&#63;php
$page = "koonktechnologies";
$count = fb_fan_count($page);
echo $count;
&#63;>
로그인 후 복사

7. 确定任意图片的主导颜色

function dominant_color($image)
{
$i = imagecreatefromjpeg($image);
for ($x=0;$x<imagesx($i);$x++) {
  for ($y=0;$y<imagesy($i);$y++) {
    $rgb = imagecolorat($i,$x,$y);
    $r  = ($rgb >> 16) & 0xFF;
    $g  = ($rgb >> & 0xFF;
    $b  = $rgb & 0xFF;
    $rTotal += $r;
    $gTotal += $g;
    $bTotal += $b;
    $total++;
  }
}
$rAverage = round($rTotal/$total);
$gAverage = round($gTotal/$total);
$bAverage = round($bTotal/$total);
}
로그인 후 복사

8. whois 查询
使用下面的函数可以获取任何域名用户的完整细节

function whois_query($domain) {
     
  // fix the domain name:
  $domain = strtolower(trim($domain));
  $domain = preg_replace('/^http:\/\//i', '', $domain);
  $domain = preg_replace('/^www\./i', '', $domain);
  $domain = explode('/', $domain);
  $domain = trim($domain[0]);
     
  // split the TLD from domain name
  $_domain = explode('.', $domain);
  $lst = count($_domain)-1;
  $ext = $_domain[$lst];
     
  // You find resources and lists
  // like these on wikipedia:
  //
  // http://de.wikipedia.org/wiki/Whois
  //
  $servers = array(
    "biz" => "whois.neulevel.biz",
    "com" => "whois.internic.net",
    "us" => "whois.nic.us",
    "coop" => "whois.nic.coop",
    "info" => "whois.nic.info",
    "name" => "whois.nic.name",
    "net" => "whois.internic.net",
    "gov" => "whois.nic.gov",
    "edu" => "whois.internic.net",
    "mil" => "rs.internic.net",
    "int" => "whois.iana.org",
    "ac" => "whois.nic.ac",
    "ae" => "whois.uaenic.ae",
    "at" => "whois.ripe.net",
    "au" => "whois.aunic.net",
    "be" => "whois.dns.be",
    "bg" => "whois.ripe.net",
    "br" => "whois.registro.br",
    "bz" => "whois.belizenic.bz",
    "ca" => "whois.cira.ca",
    "cc" => "whois.nic.cc",
    "ch" => "whois.nic.ch",
    "cl" => "whois.nic.cl",
    "cn" => "whois.cnnic.net.cn",
    "cz" => "whois.nic.cz",
    "de" => "whois.nic.de",
    "fr" => "whois.nic.fr",
    "hu" => "whois.nic.hu",
    "ie" => "whois.domainregistry.ie",
    "il" => "whois.isoc.org.il",
    "in" => "whois.ncst.ernet.in",
    "ir" => "whois.nic.ir",
    "mc" => "whois.ripe.net",
    "to" => "whois.tonic.to",
    "tv" => "whois.tv",
    "ru" => "whois.ripn.net",
    "org" => "whois.pir.org",
    "aero" => "whois.information.aero",
    "nl" => "whois.domain-registry.nl"
  );
     
  if (!isset($servers[$ext])){
    die('Error: No matching nic server found!');
  }
     
  $nic_server = $servers[$ext];
     
  $output = '';
     
  // connect to whois server:
  if ($conn = fsockopen ($nic_server, 43)) {
    fputs($conn, $domain."\r\n");
    while(!feof($conn)) {
      $output .= fgets($conn,128);
    }
    fclose($conn);
  }
  else { die('Error: Could not connect to ' . $nic_server . '!'); }
     
  return $output;
}
로그인 후 복사

语法:

<&#63;php
$domain = "http://www.blog.koonk.com";
$result = whois_query($domain);
print_r($result);
&#63;>
로그인 후 복사

9. 验证邮箱地址
有时候,当在网站填写表单,用户可能会输入错误的邮箱地址,这个函数可以验证邮箱地址是否有效。

function is_validemail($email)
{
$check = 0;
if(filter_var($email,FILTER_VALIDATE_EMAIL))
{
$check = 1;
}
return $check;
}
    
로그인 후 복사

语法:

<&#63;php
$email = "blog@koonk.com";
$check = is_validemail($email);
echo $check;
// If the output is 1, then email is valid.
&#63;>
로그인 후 복사

10. 获取用户的真实 IP

function getRealIpAddr() 
{ 
  if (!emptyempty($_SERVER['HTTP_CLIENT_IP'])) 
  { 
    $ip=$_SERVER['HTTP_CLIENT_IP']; 
  } 
  elseif (!emptyempty($_SERVER['HTTP_X_FORWARDED_FOR'])) 
  //to check ip is pass from proxy 
  { 
    $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
  } 
  else 
  { 
    $ip=$_SERVER['REMOTE_ADDR']; 
  } 
  return $ip; 
}
로그인 후 복사

语法:

<&#63;php
$ip = getRealIpAddr();
echo $ip;
&#63;>
로그인 후 복사

11. 转换 URL:从字符串变成超链接
如果你正在开发论坛,博客或者是一个常规的表单提交,很多时候都要用户访问一个网站。使用这个函数,URL 字符串就可以自动的转换为超链接。

function makeClickableLinks($text)
{ 
 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#&#63;&//=]+)', 
 '<a href="\1">\1</a>', $text); 
 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#&#63;&//=]+)', 
 '\1<a href="http://\2">\2</a>', $text); 
 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})', 
 '<a href="mailto:\1">\1</a>', $text); 
     
return $text; 
}
   
로그인 후 복사

语法:

<&#63;php
$text = "This is my first post on http://blog.koonk.com";
$text = makeClickableLinks($text);
echo $text;
&#63;>
로그인 후 복사

12. 阻止多个 IP 访问你的网站
这个代码片段可以方便你禁止某些特定的 IP 地址访问你的网站

if ( !file_exists('blocked_ips.txt') ) {
 $deny_ips = array(
 '127.0.0.1',
 '192.168.1.1',
 '83.76.27.9',
 '192.168.1.163'
 );
} else {
 $deny_ips = file('blocked_ips.txt');
}
// read user ip adress:
$ip = isset($_SERVER['REMOTE_ADDR']) &#63; trim($_SERVER['REMOTE_ADDR']) : '';
    
// search current IP in $deny_ips array
if ( (array_search($ip, $deny_ips))!== FALSE ) {
 // address is blocked:
 echo 'Your IP adress ('.$ip.') was blocked!';
 exit;
}
로그인 후 복사

13. 强制性文件下载
如果你需要下载特定的文件而不用另开新窗口,下面的代码片段可以帮助你。

function force_download($file)
{
  $dir   = "../log/exports/";
  if ((isset($file))&&(file_exists($dir.$file))) {
    header("Content-type: application/force-download");
    header('Content-Disposition: inline; filename="' . $dir.$file . '"');
    header("Content-Transfer-Encoding: Binary");
    header("Content-length: ".filesize($dir.$file));
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . $file . '"');
    readfile("$dir$file");
  } else {
    echo "No file selected";
  }
}
로그인 후 복사

语法:

<php
force_download("image.jpg");
&#63;>
로그인 후 복사

14. 创建 JSON 数据
使用下面的 PHP 片段可以创建 JSON 数据,可以方便你创建移动应用的 Web 服务

$json_data = array ('id'=>1,'name'=>"Mohit");
echo json_encode($json_data);
로그인 후 복사

15. 压缩 zip 文件
使用下面的 PHP 片段可以即时压缩 zip 文件

function create_zip($files = array(),$destination = '',$overwrite = false) { 
  //if the zip file already exists and overwrite is false, return false 
  if(file_exists($destination) && !$overwrite) { return false; } 
  //vars 
  $valid_files = array(); 
  //if files were passed in... 
  if(is_array($files)) { 
    //cycle through each file 
    foreach($files as $file) { 
      //make sure the file exists 
      if(file_exists($file)) { 
        $valid_files[] = $file; 
      } 
    } 
  } 
  //if we have good files... 
  if(count($valid_files)) { 
    //create the archive 
    $zip = new ZipArchive(); 
    if($zip->open($destination,$overwrite &#63; ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) { 
      return false; 
    } 
    //add the files 
    foreach($valid_files as $file) { 
      $zip->addFile($file,$file); 
    } 
    //debug 
    //echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status; 
         
    //close the zip -- done! 
    $zip->close(); 
         
    //check to make sure the file exists 
    return file_exists($destination); 
  } 
  else 
  { 
    return false; 
  } 
}
   
로그인 후 복사

语法:

<&#63;php
$files=array('file1.jpg', 'file2.jpg', 'file3.gif'); 
create_zip($files, 'myzipfile.zip', true);
&#63;>
로그인 후 복사

16. 解压文件

function unzip($location,$newLocation)
{
    if(exec("unzip $location",$arr)){
      mkdir($newLocation);
      for($i = 1;$i< count($arr);$i++){
        $file = trim(preg_replace("~inflating: ~","",$arr[$i]));
        copy($location.'/'.$file,$newLocation.'/'.$file);
        unlink($location.'/'.$file);
      }
      return TRUE;
    }else{
      return FALSE;
    }
}



로그인 후 복사

语法:

<&#63;php
unzip('test.zip','unziped/test'); //File would be unzipped in unziped/test folder
&#63;>
로그인 후 복사

17. 缩放图片

function resize_image($filename, $tmpname, $xmax, $ymax) 
{ 
  $ext = explode(".", $filename); 
  $ext = $ext[count($ext)-1]; 
     
  if($ext == "jpg" || $ext == "jpeg") 
    $im = imagecreatefromjpeg($tmpname); 
  elseif($ext == "png") 
    $im = imagecreatefrompng($tmpname); 
  elseif($ext == "gif") 
    $im = imagecreatefromgif($tmpname); 
       
  $x = imagesx($im); 
  $y = imagesy($im); 
       
  if($x <= $xmax && $y <= $ymax) 
    return $im; 
     
  if($x >= $y) { 
    $newx = $xmax; 
    $newy = $newx * $y / $x; 
  } 
  else { 
    $newy = $ymax; 
    $newx = $x / $y * $newy; 
  } 
       
  $im2 = imagecreatetruecolor($newx, $newy); 
  imagecopyresized($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y); 
  return $im2; 
}
로그인 후 복사

18. 使用 mail() 发送邮件
之前我们提供了如何使用 Mandrill 发送邮件的 PHP 代码片段,但是如果你不想使用第三方服务,那么可以使用下面的 PHP 代码片段。

function send_mail($to,$subject,$body)
{
$headers = "From: KOONK\r\n";
$headers .= "Reply-To: blog@koonk.com\r\n";
$headers .= "Return-Path: blog@koonk.com\r\n";
$headers .= "X-Mailer: PHP5\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to,$subject,$body,$headers);
}
   
로그인 후 복사

语法:

<&#63;php
$to = "admin@koonk.com";
$subject = "This is a test mail";
$body = "Hello World!";
send_mail($to,$subject,$body);
&#63;>
로그인 후 복사

19. 把秒转换成天数,小时数和分钟

function secsToStr($secs) {
  if($secs>=86400){$days=floor($secs/86400);$secs=$secs%86400;$r=$days.' day';if($days<>1){$r.='s';}if($secs>0){$r.=', ';}}
  if($secs>=3600){$hours=floor($secs/3600);$secs=$secs%3600;$r.=$hours.' hour';if($hours<>1){$r.='s';}if($secs>0){$r.=', ';}}
  if($secs>=60){$minutes=floor($secs/60);$secs=$secs%60;$r.=$minutes.' minute';if($minutes<>1){$r.='s';}if($secs>0){$r.=', ';}}
  $r.=$secs.' second';if($secs<>1){$r.='s';}
  return $r;
}
로그인 후 복사

语法:

<&#63;php
$seconds = "56789";
$output = secsToStr($seconds);
echo $output;
&#63;>
로그인 후 복사

20. 数据库连接
连接 MySQL 数据库

<&#63;php
$DBNAME = 'koonk';
$HOST = 'localhost';
$DBUSER = 'root';
$DBPASS = 'koonk';
$CONNECT = mysql_connect($HOST,$DBUSER,$DBPASS);
if(!$CONNECT)
{
  echo 'MySQL Error: '.mysql_error();
}
$SELECT = mysql_select_db($DBNAME);
if(!$SELECT)
{
  echo 'MySQL Error: '.mysql_error();
}
&#63;>
로그인 후 복사

21. 目录清单
使用下面的 PHP 代码片段可以在一个目录中列出所有文件和文件夹

function list_files($dir)
{
  if(is_dir($dir))
  {
    if($handle = opendir($dir))
    {
      while(($file = readdir($handle)) !== false)
      {
        if($file != "." && $file != ".." && $file != "Thumbs.db"/*pesky windows, images..*/)
        {
          echo '<a target="_blank" href="'.$dir.$file.'">'.$file.'</a>'."\n";
        }
      }
      closedir($handle);
    }
  }
}
로그인 후 복사

语法:

<&#63;php
  list_files("images/"); //This will list all files of images folder
&#63;>
로그인 후 복사

22. 检测用户语言
使用下面的 PHP 代码片段可以检测用户浏览器所使用的语言

function get_client_language($availableLanguages, $default='en'){
  if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
    $langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
    foreach ($langs as $value){
      $choice=substr($value,0,2);
      if(in_array($choice, $availableLanguages)){
        return $choice;
      }
    }
  }
  return $default;
}
로그인 후 복사

23. 查看 CSV 文件

function readCSV($csvFile){
  $file_handle = fopen($csvFile, 'r');
  while (!feof($file_handle) ) {
    $line_of_text[] = fgetcsv($file_handle, 1024);
  }
  fclose($file_handle);
  return $line_of_text;
}
  
로그인 후 복사

语法:

<&#63;php
$csvFile = "test.csv";
$csv = readCSV($csvFile);
$a = csv[0][0]; // This will get value of Column 1 & Row 1
&#63;>
로그인 후 복사

以上就是本文的全部内容,希望对大家的学习有所帮助。

您可能感兴趣的文章:

  • 7个超级实用的PHP代码片段
  • 10个实用的PHP代码片段
  • php中常用字符串处理代码片段整理
  • 超级实用的7个PHP代码片段分享
  • PHP 安全检测代码片段(分享)
  • 19个超实用的PHP代码片段
  • 9个经典的PHP代码片段分享
  • 9个实用的PHP代码片段分享
  • 10个超级有用值得收藏的PHP代码片段
  • 6个超实用的PHP代码片段
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 데이터베이스 작업 CakePHP 데이터베이스 작업 Sep 10, 2024 pm 05:25 PM

CakePHP에서 데이터베이스 작업은 매우 쉽습니다. 이번 장에서는 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 이해하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

이번 장에서는 라우팅과 관련된 다음과 같은 주제를 학습하겠습니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

See all articles