php 正则提取文章中的图片,并替换、移动图片目录
本文章来给大家列举一些常用的php 正则提取文章中的图片,并替换、移动图片目录代码,希望此文章对大家会有所帮助。
上传图片时,上传的图片并没有全部用到,那么可以设置上传时只存到临时文件夹里面,文章发布的时候把真正用到的图片移动到有用的目录里,这样定期清理无用目录就可以了。
<?php //转移临时文件夹中的图片 $imgssss = preg_match_all("/linshi/[^\s\'\"]+.jpg|png|gif|jpeg{1}/ui", $content, $imgss); $i = 1; foreach ($imgss as $aimg) { if (is_string($aimg)) { if (file_exists($aimg)) { $newdir = "upload/" . date("ymdhis") . "/"; if (!file_exists($newdir)) { mkdir($newdir, 0755, true); } $newname = $newdir . date("ymdhis") . $i . "." . pathinfo($aimg, PATHINFO_EXTENSION); rename($aimg, $newname); $content = str_replace($aimg, $newname, $content); } $i++; } elseif (is_array($aimg)) { foreach ($aimg as $imga) { if (file_exists($imga)) { $newdir = "upload/" . date("ymdhis") . "/"; if (!file_exists($newdir)) { mkdir($newdir, 0755, true); } $newname = $newdir . date("ymdhis") . $i . "." . pathinfo($imga, PATHINFO_EXTENSION); rename($imga, $newname); $content = str_replace($imga, $newname, $content); } $i++; } } } ?>
如果只是移动单张图片比较简单:
<?php $newdir = "upload/" . date("ymdhis") . "/"; if (!file_exists($newdir)) { mkdir($newdir, 0755, true); } $newname = $newdir . "s_" . date("ymdhis") . "." . pathinfo($upimgurl, PATHINFO_EXTENSION); rename($upimgurl, $newname); ?>
教程网址:
欢迎收藏∩_∩但请保留本文链接。

핫 AI 도구

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

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

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

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











1. Iterator와 foreach의 차이점은 다형성 차이입니다(foreach의 맨 아래 레이어는 Iterator입니다). Iterator는 인터페이스 유형이므로 컬렉션 유형이나 배열에 관심이 없습니다. for와 foreach 모두 컬렉션 유형을 알아야 합니다. 1. foreach의 최하위 레이어가 Iterator에 의해 작성된 코드라고 말하는 이유: 디컴파일된 코드: 2. foreach와 iterator에서 제거의 차이점을 살펴보세요. Alibaba Java Development Manual, 그러나 1번의 경우에는 오류가 보고되지 않으며, 2번의 경우(java.util.ConcurrentModificationException) 먼저 오류가 보고됩니다.

PHP가 foreach 루프 수를 결정하는 단계: 1. "$fruits" 배열을 만듭니다. 2. 초기 값이 0인 카운터 변수 "$counter"를 만듭니다. 3. "foreach"를 사용하여 루프를 만듭니다. 배열을 통해 루프 본문의 카운터 변수 값을 늘린 다음 각 요소와 해당 인덱스를 출력합니다. 4. "foreach" 루프 외부에 카운터 변수 값을 출력하여 루프가 도달하는 요소를 확인합니다.

이 기사에서는 키 값을 뒤집은 후 PHP가 배열을 반환하는 방법을 자세히 설명합니다. 편집자는 이것이 매우 실용적이라고 생각하므로 이 기사를 읽고 뭔가를 얻을 수 있기를 바랍니다. PHP 키 값 뒤집기 배열 키 값 뒤집기는 배열의 키와 값을 교환하여 원래 키를 값으로, 원래 값을 키로 사용하여 새 배열을 생성하는 배열 작업입니다. 구현 방법 PHP에서는 다음 방법을 통해 배열의 키-값 뒤집기를 수행할 수 있습니다. array_flip() 함수: array_flip() 함수는 키-값 뒤집기 작업에 특별히 사용됩니다. 배열을 인수로 받고 키와 값이 교환된 새 배열을 반환합니다. $original_array=[

이 기사에서는 PHP가 반환하는 배열의 현재 요소에 대해 자세히 설명할 것입니다. 편집자는 이것이 매우 실용적이라고 생각하므로 이 기사를 읽고 뭔가를 얻을 수 있기를 바랍니다. PHP 배열의 현재 요소 가져오기 PHP는 배열의 현재 요소 가져오기를 포함하여 배열에 액세스하고 조작하기 위한 다양한 방법을 제공합니다. 다음은 일반적으로 사용되는 몇 가지 기술을 소개합니다. 1. current() 함수 current() 함수는 배열의 내부 포인터가 현재 가리키는 요소를 반환합니다. 포인터는 처음에 배열의 첫 번째 요소를 가리킵니다. 다음 구문을 사용하십시오. $currentElement=current($array);2.key() 함수 key() 함수는 현재 요소를 가리키는 배열 내부 포인터를 반환합니다.

차이점: 1. for는 인덱스를 통해 각 데이터 요소를 반복하는 반면 forEach는 JS 기본 프로그램을 통해 배열의 데이터 요소를 반복합니다. 2. for는 break 키워드를 통해 루프 실행을 종료할 수 있지만 forEach는 그렇지 않습니다. for는 루프 변수의 값을 제어하여 루프 실행을 제어할 수 있지만 forEach는 루프 외부에서 루프 변수를 호출할 수 없지만 forEach는 루프 외부에서 루프 변수를 호출할 수 없습니다. forEach보다 높습니다.

forEach 함수를 사용하여 객체의 속성을 반복하는 방법은 무엇입니까? JavaScript에서는 객체의 속성을 탐색해야 하는 경우가 많습니다. 객체의 속성을 반복하는 간결한 방법을 사용하려면 forEach 함수가 매우 좋은 선택입니다. 이 기사에서는 forEach 함수를 사용하여 객체의 속성을 반복하는 방법과 구체적인 코드 예제를 제공하는 방법을 설명합니다. 먼저 forEach 함수의 기본적인 사용법을 살펴보겠습니다. forEach 함수는 Java입니다.

맵 인터페이스 개요 맵 인터페이스는 Java 컬렉션 프레임워크에 키-값 쌍을 저장하는 데 사용되는 데이터 구조입니다. 키를 사용하여 관련 값을 찾고 검색할 수 있습니다. Map 인터페이스는 put(), get(), Remove(), containKey(), containValue(), size(), isEmpty() 등을 포함한 많은 유용한 메소드를 제공합니다. 맵 구현 Java에서 가장 일반적으로 사용되는 맵 구현은 HashMap과 TreeMap입니다. HashMap은 키의 해시 값을 계산하여 값을 빠르게 찾고 검색하는 해시 테이블 기반 Map 구현입니다. TreeMap은 키를 오름차순 또는 내림차순으로 정렬하는 레드-블랙 트리를 기반으로 하는 Map 구현입니다.

PHP에서 foreach 문은 배열과 객체를 탐색하는 데 널리 사용됩니다. 루프 중에 루프의 현재 요소를 가져와야 하는 경우가 있습니다. 이 기사에서는 PHP foreach 루프에서 현재 요소의 인덱스 값을 가져오는 방법을 소개합니다.
