ADVERTISEMENT

Building under construction in Angeles City collapses, leaving 1 dead, 21 trapped

Published May 24, 2026 05:13 pm
ANGELES CITY (AP) — A nine-story building under construction here collapsed before dawn on Sunday, leaving at least one Malaysian tourist dead and at least 21 mostly workers trapped in the rubble, officials said.
Two were located alive but could not be immediately extricated.
THE collapsed building in Angeles City. (Angeles City Information Office)
THE collapsed building in Angeles City. (Angeles City Information Office)
A collapsed building where multiple people are believed to be trapped in Angeles City in Pampanga Sunday, May 24, 2026. (AP)
A collapsed building where multiple people are believed to be trapped in Angeles City in Pampanga Sunday, May 24, 2026. (AP)
At least 24 workers either managed to dash out of the building, where they mostly slept on the ground floor, or were rescued after the it crumbled to the ground around 2:30 a.m. in a crowded neighborhood of budget hotels, cafes, spas and rural houses outside a former US Air Force base, officials said.
A Malaysian tourist died and another guest was injured in a lodging house, which was partly hit by debris from the collapsing building, Fire Supt. Maria Lea Sajili said.
Relatives of those trapped under concrete slabs, twisted iron bars, and aluminum scaffoldings and other debris prayed and wept as they waited for word from about 700 rescuers gingerly scouring the rubble pail to create space for them to safely move into the collapsed structure.
"This is the worst day of our lives," Joamel Angcao, an 18-year-old student, told The Associated Press as she and other siblings waited for word on their parents, who were among those trapped.
Her parents were tending to their food and coffee cart positioned beside the building when it tumbled down. The parents had struggled through poverty to send her and another sibling to school, Angcao said, tears welling in her eyes.
John Carlo Villarente, a young plumber, said that he stepped out of the building about two hours before it collapsed after heavy rains and fierce wind to have a drink.
"I was so shocked, there were people inside, including my nephew," Villarente told The AP. "We ran and tried to help but we were not allowed to get near because people said it was very dangerous."
Randy Alapide, a 41-year-old plumber who was off-duty when the accident unfolded, said he rushed back to the scene and helped rescuers locate trapped workers by drawing a map to pinpoint their location. "I know three of the missing. They are breadwinners and they have families waiting for them," Alapide said.
Sajili said two of the trapped workers were located alive by rescuers but it was taking time to pluck them out safely. Ambulance vans, firefighters, and police lined up waiting for the two to be extricated.
Nearly 200 police officers were helping in the rescue, which would proceed overnight "until all are accounted for," Police Regional Office-3 Director Police Brig. Gen. Jess Mendez said.
Angeles City hosted one of the largest US Air Force bases outside of the American mainland until it closed in the early 1990s, helping develop Angeles and outlying cities and towns into entertainment and commercial hubs in Luzon.
The former American air base, now a bustling industrial and tourism enclave called the Clark Freeport Zone, lies about about 80 kilometers (50 miles) north of Manila.

Related Tags

Angeles City Building collapse
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.