imagick은 강력한 이미지 처리 라이브러리입니다.
제가 번역이라고 부르는 것은 실제로 imagick의 주요 기능에 대한 간략한 소개이거나, 제가 생각하기에 더 실용적이라고 생각되는 기능에 대한 소개와 그 사용 예입니다.
제 영어 실력이 부족하기 때문에 더 대중적이고 실용적인 언어를 사용하여 설명합니다.
먼저 눈부신 효과 세트를 즐겨보세요:
오프셋 이미지:
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->rollImage(20,39); echo $image; ?>
thumbnailImage($width,$height) 이미지 크기 변경
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->thumbnailImage(100,0); echo $image; ?>
addNoiseImage(int $noise_type [, int $channel= Imagick::CHANNEL_ALL ])
기능:
이미지에 임의의 노이즈 추가
인터페론 추가
코드 복사 코드는 다음과 같습니다.
Noise constants ( $noise_type 类型) imagick::NOISE_UNIFORM (integer) imagick::NOISE_GAUSSIAN (integer) imagick::NOISE_MULTIPLICATIVEGAUSSIAN (integer) imagick::NOISE_IMPULSE (integer) imagick::NOISE_LAPLACIAN (integer) imagick::NOISE_POISSON (integer) Channel constants ( $channel 类型) imagick::CHANNEL_UNDEFINED (integer) imagick::CHANNEL_RED (integer) imagick::CHANNEL_GRAY (integer) imagick::CHANNEL_CYAN (integer) imagick::CHANNEL_GREEN (integer) imagick::CHANNEL_MAGENTA (integer) imagick::CHANNEL_BLUE (integer) imagick::CHANNEL_YELLOW (integer) imagick::CHANNEL_ALPHA (integer) imagick::CHANNEL_OPACITY (integer) imagick::CHANNEL_MATTE (integer) imagick::CHANNEL_BLACK (integer) imagick::CHANNEL_INDEX (integer) imagick::CHANNEL_ALL (integer)
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->thumbnailImage(100,0); $image->addNoiseImage(imagick::NOISE_POISSON,imagick::CHANNEL_OPACITY); echo $image; ?>
annotateImage 텍스트 이미지 생성
예:
코드 복사 코드는 다음과 같습니다.
<?php $image = new Imagick(); $draw = new ImagickDraw(); $pixel = new ImagickPixel( 'gray' ); $image->newImage(800, 75, $pixel); $pixel->setColor('black'); $draw->setFont('Bookman-DemiItalic'); $draw->setFontSize( 30 ); $image->annotateImage($draw, 10, 45, 0, 'The quick brown fox jumps over the lazy dog'); $image->setImageFormat('png'); header('Content-type: image/png'); echo $image; ?>
blurImage(float $radius, float $sigma [, int $channel ])
이미지에 흐림 필터 추가 이미지 흐림 처리
매개변수:
코드 복사 코드는 다음과 같습니다.
int $channel : imagick::CHANNEL_UNDEFINED (integer) imagick::CHANNEL_RED (integer) imagick::CHANNEL_GRAY (integer) imagick::CHANNEL_CYAN (integer) imagick::CHANNEL_GREEN (integer) imagick::CHANNEL_MAGENTA (integer) imagick::CHANNEL_BLUE (integer) imagick::CHANNEL_YELLOW (integer) imagick::CHANNEL_ALPHA (integer) imagick::CHANNEL_OPACITY (integer) imagick::CHANNEL_MATTE (integer) imagick::CHANNEL_BLACK (integer) imagick::CHANNEL_INDEX (integer) imagick::CHANNEL_ALL (integer)
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->blurImage(5,3); echo $image; ?>
borderImage (혼합 $bordercolor, int $width, int $height) 이미지 테두리 처리
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->borderImage($color,5,4); $image->blurImage(5,5,imagick::CHANNEL_GREEN); echo $image; ?>
charcoalImage(float $radius, float $sigma) 이미지 스케치 처리
매개변수 설명:
$radius: 작을수록 얇아집니다.
$sigma: 잉크가 클수록 잉크가 어두워지고 그 반대도 마찬가지입니다.
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->borderImage($color,5,4); $image->charcoalImage(0.0001,0.001); //$image->blurImage(5,5,imagick::CHANNEL_GREEN); echo $image; ?>
chopImage ( int $ width , int $height , int $x , int $y )
매개변수 설명: 이미지 영역의 특정 범위를 삭제합니다.
매개변수 설명이 없으므로 한눈에 알 수 있습니다.
colorizeImage( 혼합 $ colorize , 혼합 $opacity ) 혼합 채우기 색상
$colorize color
$opacit 투명도
예:
코드 복사 코드 다음과 같습니다:
<?php /* 胶卷底片效果 */ ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->negateImage(false); $image->colorizeImage('#000',1.0); echo $image; ?>
embossImage ( float $radius , float $sigma )
기능: 회색조 3D 이미지를 반환하는 것은 그리 좋지 않습니다.
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->embossImage(1,1); echo $image; ?>
(2개 렌더링)
flipImage(void)
기능: 이미지 반사 생성(수직 뒤집기)
예:
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->flipImage(); echo $image; ?>
flopImage(void)
기능: 이미지를 가로로 뒤집습니다
코드 복사 코드는 다음과 같습니다:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->flopImage(); echo $image; ?>
frameImage(mixed $matte_color,int $width, int $height,int $inner_bevel, int $outer_bevel)
기능 : 3D 이미지 테두리 생성
매개변수 설명:
$matte_color: color
$inner_bevel: 테두리의 내부 경사
$outer_bevel: 외부 테두리 경사
예 :
코드 복사 코드는 다음과 같습니다.
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->frameImage($color,11,11,1,10); echo $image; ?>
注意事项:
$width(宽度)不能小于$inner_bevel(边框内部倾斜度)
Imagick::gammaImage (float $gamma [,int $channel= Imagick::CHANNEL_ALL])
功能:调整图像灰度系数
参数说明:
float $gamma :灰度系数值
$channel 默认为 Imagick::CHANNEL_ALL
Imagick::CHANNEL_ALL
例子 1:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->gammaImage(30); echo $image; ?>
例子 2:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->gammaImage(30); echo $image; ?>
gaussianBlurImage ( float $radius , float $sigma [, int $channel= Imagick::CHANNEL_ALL ] )
功能:高斯模糊处理 类似于photo的高斯模糊
参数说明:
float $radius:高斯模糊的半径,像素,不包括中心象素。
float $sigma :高斯的标准偏差,以像素为单位。我觉得这个参数最重要。
int $channel :图像颜色模式。
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->gaussianBlurImage(30,3); echo $image; ?>
levelImage ( float $blackPoint , float $gamma , float $whitePoint [, int $channel= Imagick::CHANNEL_ALL ] )
功能: 调整图像的色阶(Adjusts the levels of an image)
参数说明
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->levelImage(4,4,4); echo $image; ?>
例子2:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->levelImage(200,200,200,imagick::CHANNEL_GREEN); echo $image; ?>
magnifyImage( void )
功能说明:简便的图像等比例放大2倍(Is a convenience method that scales an image proportionally to twice its original size. )
例子:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->magnifyImage (); echo $image; ?>
medianFilterImage ( float $radius )
功能:特是的滤镜 有点像photoshop 调色刀滤镜
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->medianFilterImage(5); echo $image; ?>
minifyImage(void)
功能:图小缩小一倍(Scales an image proportionally to half its size)
例子:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->minifyImage(); echo $image; ?>
modulateImage ( float $brightness , float $saturation , float $hue )
功能:控制调整图像的 亮度、饱和度、色调。
参数说明:
float $brightness: 亮度
float $saturation :饱和度
float $hue 色调
例子1:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->modulateImage(100,1,100); echo $image; ?>
例子2:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $image->modulateImage(250,1,250); echo $image; ?>
motionBlurImagemotionBlurImage ( float $radius , float $sigma , float $angle [, int $channel= Imagick::CHANNEL_DEFAULT ] )
功能:模拟运动模糊(Simulates motion blur) ,类似photoshop的动感模糊滤镜功能
参数说明:
float $radius: 高斯 半径,不包过中心像素。
float $sigma:标准偏差的高斯,以像素为单位。【重要参数】
float $angle:模糊角度。
int $channel:图像颜色模式。默认为 Imagick::CHANNEL_DEFAULT
例子1:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->motionBlurImage (61,10,10); echo $image; ?>
例子2:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->motionBlurImage (201,10,100); echo $image; ?>
oilPaintImage ( float $radius ):
功能说明: 模拟油画滤镜(Simulates an oil painting)
例子:
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->oilPaintImage(1); echo $image; ?>
radialBlurImage ( float $angle [, int $channel= Imagick::CHANNEL_ALL ] )
功能: 径向模糊(Radial blurs an image)
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->radialBlurImage(30); echo $image; ?>
raiseImage ( int $width , int $height , int $x , int $y , bool $raise )
功能说明:创建3D图像按钮(Creates a simulated 3d button-like effect)
复制代码 代码如下:
<?php ini_set('display_errors',1); header('Content-type: image/jpeg'); $image = new Imagick('1.jpg'); $color=new ImagickPixel(); $color->setColor("rgb(220,220,220)"); $image->raiseImage(10,10,3,5,6); echo $image; ?>
附1:要求缩小图片尺寸、增加半透明边框,读入exif信息,按指定要求显示在图片上
复制代码 代码如下:
$towidth = '500'; $toheight = '700'; //设置图片调整大小时允许的最大宽度和高度 $sourcefile = './b.jpg'; //定义一个图像文件路径 //$image->writeImage('./b.jpg.bak'); //可以备份这个图片 $myimage = new Imagick( $sourcefile ); //读入该图像文件 $exifobject = my_exif( $myimage ); //自写函数,读取exif信息(拍摄数据),按自己的要求排列exif信息,返回对象 //$myimage->setImageFormat('jpeg'); //把图片转为jpg格式 $myimage->setCompressionQuality( 100 ); //设置jpg压缩质量,1 - 100 $myimage->enhanceImage(); //去噪点 $sourcewidth = $myimage->getImageWidth(); //获取读入图像原始大小 if ( $sourcewidth > $towidth ) { $myimage->scaleImage( $towidth, $toheight, true ); //调整图片大小 } $myimage->raiseImage( 8, 8, 0, 0, 1 ); //加半透明边框 $resizewidth = $myimage->getImageWidth(); //读出调整之后的图片大小 $resizeheight = $myimage->getImageHeight(); $drawback = new ImagickDraw(); //实例化一个绘画对象,绘制半透明黑色背景给exif信息用 $drawback->setFillColor( new ImagickPixel('#000000') ); //设置填充颜色为黑色 $drawback->setFillOpacity( 0.6 ); //填充透明度为0.6,参数0.1-1,1为不透明 $drawback->rectangle( $resizewidth / 2 - 190, $resizeheight - 50, $resizewidth / 2 + 190, $resizeheight - 12 ); //绘制矩形参数,分别为左上角x、y,右下角x、y $myimage->drawImage( $drawback ); //确认到image中绘制该矩形框 $draw = new ImagickDraw(); //实例化一个绘画对象,绘制exif文本信息嵌入图片中 $draw->setFont( './xianhei.ttf' ); //设置文本字体,要求ttf或者ttc字体,可以绝对或者相对路径 $draw->setFontSize( 11 ); //设置字号 $draw->setTextAlignment( 2 ); //文字对齐方式,2为居中 $draw->setFillColor( '#FFFFFF' ); //文字填充颜色 $myimage->annotateImage( $draw, $resizewidth / 2, $resizeheight - 39, 0, $exifobject->row1 ); //绘制第一行文本,居中 $myimage->annotateImage( $draw, $resizewidth / 2, $resizeheight - 27, 0, $exifobject->row2 ); //绘制第二行文本,居中 $myimage->annotateImage( $draw, $resizewidth / 2, $resizeheight - 15, 0, $exifobject->row3 ); //绘制第三行文本,居中 /* Output the image with headers */ header( 'Content-type: image/jpeg' ); //php文件输出mime类型为jpeg图片 echo $myimage; //在当前php页面输出图片 //$image->writeImage('./b.new.jpg'); //如果图片不需要在当前php程序中输出,使用写入图片到磁盘函数,上面的设置header也可以去除 $myimage->clear(); $myimage->destroy(); //释放资源 //自写函数,读取exif信息,返回对象 function my_exif( $myimage ) { $exifArray = array( 'exif:Model' => '未知', 'exif:DateTimeOriginal' => '未知', 'exif:ExposureProgram' => '未知', 'exif:FNumber' => '0/10', 'exif:ExposureTime' => '0/10', 'exif:ISOSpeedRatings' => '未知', 'exif:MeteringMode' => '未知', 'exif:Flash' => '关闭闪光灯', 'exif:FocalLength' => '未知', 'exif:ExifImageWidth' => '未知', 'exif:ExifImageLength' => '未知' ); //初始化部分信息,防止无法读取照片exif信息时运算发生错误 $exifArray = $myimage->getImageProperties( "exif:*" ); //读取图片的exif信息,存入$exifArray数组 //如果需要显示原数组可以使用print_r($exifArray); $r->row1 = '相机:' . $exifArray['exif:Model']; $r->row1 = $r->row1 . ' 拍摄时间:' . $exifArray['exif:DateTimeOriginal']; switch ( $exifArray['exif:ExposureProgram'] ) { case 1: $exifArray['exif:ExposureProgram'] = "手动(M)"; break; //Manual Control case 2: $exifArray['exif:ExposureProgram'] = "程序自动(P)"; break; //Program Normal case 3: $exifArray['exif:ExposureProgram'] = "光圈优先(A,Av)"; break; //Aperture Priority case 4: $exifArray['exif:ExposureProgram'] = "快门优先(S,Tv)"; break; //Shutter Priority case 5: $exifArray['exif:ExposureProgram'] = "慢速快门"; break; //Program Creative (Slow Program) case 6: $exifArray['exif:ExposureProgram'] = "运动模式"; break; //Program Action(High-Speed Program) case 7: $exifArray['exif:ExposureProgram'] = "人像"; break; //Portrait case 8: $exifArray['exif:ExposureProgram'] = "风景"; break; //Landscape default: $exifArray['exif:ExposureProgram'] = "其它"; } $r->row1 = $r->row1 . ' 模式:' . $exifArray['exif:ExposureProgram']; $exifArray['exif:FNumber'] = explode( '/', $exifArray['exif:FNumber'] ); $exifArray['exif:FNumber'] = $exifArray['exif:FNumber'][0] / $exifArray['exif:FNumber'][1]; $r->row2 = '光圈:F/' . $exifArray['exif:FNumber']; $exifArray['exif:ExposureTime'] = explode( '/', $exifArray['exif:ExposureTime'] ); if ( ($exifArray['exif:ExposureTime'][0] / $exifArray['exif:ExposureTime'][1]) >= 1 ) { $exifArray['exif:ExposureTime'] = sprintf( "%.1fs", (float)$exifArray['exif:ExposureTime'][0] / $exifArray['exif:ExposureTime'][1] ); } else { $exifArray['exif:ExposureTime'] = sprintf( "1/%ds", $exifArray['exif:ExposureTime'][1] / $exifArray['exif:ExposureTime'][0] ); } $r->row2 = $r->row2 . ' 快门:' . $exifArray['exif:ExposureTime']; $r->row2 = $r->row2 . ' ISO:' . $exifArray['exif:ISOSpeedRatings']; $exifArray['exif:ExposureBiasValue'] = explode( "/", $exifArray['exif:ExposureBiasValue'] ); $exifArray['exif:ExposureBiasValue'] = sprintf( "%1.1feV", ((float)$exifArray['exif:ExposureBiasValue'][0] / $exifArray['exif:ExposureBiasValue'][1] * 100) / 100 ); if ( (float)$exifArray['exif:ExposureBiasValue'] > 0 ) { $exifArray['exif:ExposureBiasValue'] = "+" . $exifArray['exif:ExposureBiasValue']; } $r->row2 = $r->row2 . ' 补偿:' . $exifArray['exif:ExposureBiasValue']; switch ( $exifArray['exif:MeteringMode'] ) { case 0: $exifArray['exif:MeteringMode'] = "未知"; break; case 1: $exifArray['exif:MeteringMode'] = "矩阵"; break; case 2: $exifArray['exif:MeteringMode'] = "中央重点平均"; break; case 3: $exifArray['exif:MeteringMode'] = "点测光"; break; case 4: $exifArray['exif:MeteringMode'] = "多点测光"; break; default: $exifArray['exif:MeteringMode'] = "其它"; } $r->row2 = $r->row2 . ' 测光:' . $exifArray['exif:MeteringMode']; switch ( $exifArray['exif:Flash'] ) { case 1: $exifArray['exif:Flash'] = "开启闪光灯"; break; } $r->row2 = $r->row2 . ' ' . $exifArray['exif:Flash']; if ( $exifArray['exif:FocalLengthIn35mmFilm'] ) { $r->row3 = '等效焦距:' . $exifArray['exif:FocalLengthIn35mmFilm'] . "mm"; } else { $exifArray['exif:FocalLength'] = explode( "/", $exifArray['exif:FocalLength'] ); $exifArray['exif:FocalLength'] = sprintf( "%4.1fmm", (double)$exifArray['exif:FocalLength'][0] / $exifArray['exif:FocalLength'][1] ); $r->row3 = '焦距:' . $exifArray['exif:FocalLength']; } $r->row3 = $r->row3 . ' 原始像素:' . $exifArray['exif:ExifImageWidth'] . 'x' . $exifArray['exif:ExifImageLength'] . 'px'; if ( $exifArray['exif:Software'] ) { $r->row3 = $r->row3 . ' 后期:' . $exifArray['exif:Software']; } return $r; }
附2:处理图片水印
复制代码 代码如下:
<?php //获取水印图片 $logo = new Imagick("logo.png"); $logo->setImageResolution(0.01,0.03); //创建一个Imagick对象,同时获取要处理的源图 $im = new Imagick( "old_large_img_2.jpg" ); //获取源图片宽和高 $srcWH = $im->getImageGeometry(); //图片等比例缩放宽和高设置 if($srcWH['width']>710){ $srcW['width'] = 710; $srcH['height'] = $srcW['width']/$srcWH['width']*$srcWH['height']; }else{ $srcW['width'] = $srcWH['width']; $srcH['height'] = $srcWH['height']; } //按照比例进行缩放 $im->thumbnailImage( $srcW['width'], $srcH['height'], true ); // 按照缩略图大小创建一个有颜色的图片 $canvas = new Imagick(); $canvas->newImage( $srcW['width'], $srcH['height'], 'black', 'jpg' ); //pink,black //添加水印 $im->compositeImage($logo,Imagick::COMPOSITE_OVER,$srcW['width']-280,$srcH['height']-77); $canvas->setcompressionquality(91); //合并图片 $canvas->compositeImage( $im, imagick::COMPOSITE_OVER, 0, 0); //输出图片 header( "Content-Type: image/jpg" ); echo $canvas; //生成图片 $canvas->writeImage( "test_img/old_large_img_2_96.jpg" ); ?>

여전히 인기있는 것은 사용 편의성, 유연성 및 강력한 생태계입니다. 1) 사용 편의성과 간단한 구문은 초보자에게 첫 번째 선택입니다. 2) 웹 개발, HTTP 요청 및 데이터베이스와의 우수한 상호 작용과 밀접하게 통합되었습니다. 3) 거대한 생태계는 풍부한 도구와 라이브러리를 제공합니다. 4) 활성 커뮤니티와 오픈 소스 자연은 새로운 요구와 기술 동향에 맞게 조정됩니다.

PHP와 Python은 웹 개발, 데이터 처리 및 자동화 작업에 널리 사용되는 고급 프로그래밍 언어입니다. 1.PHP는 종종 동적 웹 사이트 및 컨텐츠 관리 시스템을 구축하는 데 사용되며 Python은 종종 웹 프레임 워크 및 데이터 과학을 구축하는 데 사용됩니다. 2.PHP는 Echo를 사용하여 콘텐츠를 출력하고 Python은 인쇄를 사용합니다. 3. 객체 지향 프로그래밍을 지원하지만 구문과 키워드는 다릅니다. 4. PHP는 약한 유형 변환을 지원하는 반면, 파이썬은 더 엄격합니다. 5. PHP 성능 최적화에는 Opcache 및 비동기 프로그래밍 사용이 포함되며 Python은 Cprofile 및 비동기 프로그래밍을 사용합니다.

PHP는 주로 절차 적 프로그래밍이지만 객체 지향 프로그래밍 (OOP)도 지원합니다. Python은 OOP, 기능 및 절차 프로그래밍을 포함한 다양한 패러다임을 지원합니다. PHP는 웹 개발에 적합하며 Python은 데이터 분석 및 기계 학습과 같은 다양한 응용 프로그램에 적합합니다.

PHP는 1994 년에 시작되었으며 Rasmuslerdorf에 의해 개발되었습니다. 원래 웹 사이트 방문자를 추적하는 데 사용되었으며 점차 서버 측 스크립팅 언어로 진화했으며 웹 개발에 널리 사용되었습니다. Python은 1980 년대 후반 Guidovan Rossum에 의해 개발되었으며 1991 년에 처음 출시되었습니다. 코드 가독성과 단순성을 강조하며 과학 컴퓨팅, 데이터 분석 및 기타 분야에 적합합니다.

PHP는 웹 개발 및 빠른 프로토 타이핑에 적합하며 Python은 데이터 과학 및 기계 학습에 적합합니다. 1.PHP는 간단한 구문과 함께 동적 웹 개발에 사용되며 빠른 개발에 적합합니다. 2. Python은 간결한 구문을 가지고 있으며 여러 분야에 적합하며 강력한 라이브러리 생태계가 있습니다.

PHP는 현대화 프로세스에서 많은 웹 사이트 및 응용 프로그램을 지원하고 프레임 워크를 통해 개발 요구에 적응하기 때문에 여전히 중요합니다. 1.PHP7은 성능을 향상시키고 새로운 기능을 소개합니다. 2. Laravel, Symfony 및 Codeigniter와 같은 현대 프레임 워크는 개발을 단순화하고 코드 품질을 향상시킵니다. 3. 성능 최적화 및 모범 사례는 응용 프로그램 효율성을 더욱 향상시킵니다.

phphassignificallyimpactedwebdevelopmentandextendsbeyondit

PHP 유형은 코드 품질과 가독성을 향상시키기위한 프롬프트입니다. 1) 스칼라 유형 팁 : PHP7.0이므로 int, float 등과 같은 기능 매개 변수에 기본 데이터 유형을 지정할 수 있습니다. 2) 반환 유형 프롬프트 : 기능 반환 값 유형의 일관성을 확인하십시오. 3) Union 유형 프롬프트 : PHP8.0이므로 기능 매개 변수 또는 반환 값에 여러 유형을 지정할 수 있습니다. 4) Nullable 유형 프롬프트 : NULL 값을 포함하고 널 값을 반환 할 수있는 기능을 포함 할 수 있습니다.


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

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

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

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