<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><title>PHPLogix</title><link>https://phplogix.com/</link><description>Field-tested notes for maintaining, securing, and modernizing PHP applications without losing the behavior that matters.</description><item><title>A safe order for modernizing a legacy PHP application</title><link>https://phplogix.com/blog/archives/3/</link><guid>https://phplogix.com/blog/archives/3/</guid><description>Stabilize behavior, expose hidden dependencies, and reduce upgrade risk before changing frameworks or language versions.</description></item><item><title>Server-side validation for PHP forms</title><link>https://phplogix.com/blog/archives/8/</link><guid>https://phplogix.com/blog/archives/8/</guid><description>Build a validation boundary that treats every browser value as untrusted and returns useful errors without leaking internals.</description></item><item><title>PDO transactions: boundaries, retries, and failure handling</title><link>https://phplogix.com/blog/archives/9/</link><guid>https://phplogix.com/blog/archives/9/</guid><description>Use database transactions as explicit business boundaries instead of wrapping arbitrary blocks of PHP in begin and commit calls.</description></item><item><title>A defensive PHP file-upload pipeline</title><link>https://phplogix.com/blog/archives/10/</link><guid>https://phplogix.com/blog/archives/10/</guid><description>Move uploads through size, type, naming, storage, and access controls before they become reachable content.</description></item><item><title>Escaping output in PHP by context</title><link>https://phplogix.com/blog/archives/11/</link><guid>https://phplogix.com/blog/archives/11/</guid><description>Choose the escaping rule at the moment data enters HTML, attributes, URLs, scripts, or structured responses.</description></item><item><title>Cache boundaries that do not leak user data</title><link>https://phplogix.com/blog/archives/12/</link><guid>https://phplogix.com/blog/archives/12/</guid><description>Choose cache keys, scope, invalidation, and observability before adding a cache to a PHP endpoint.</description></item><item><title>Debugging production PHP without exposing internals</title><link>https://phplogix.com/blog/archives/13/</link><guid>https://phplogix.com/blog/archives/13/</guid><description>Build an evidence trail from request ID to logs and traces while keeping errors, secrets, and personal data out of responses.</description></item><item><title>Idempotent trading API clients in PHP</title><link>https://phplogix.com/guides/idempotent-trading-api-clients/</link><guid>https://phplogix.com/guides/idempotent-trading-api-clients/</guid><description>Design request identity, retries, state reconciliation, and failure handling before a trading client is allowed to submit live actions.</description></item></channel></rss>
