Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:97493 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 67584 invoked from network); 30 Dec 2016 04:05:16 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 30 Dec 2016 04:05:16 -0000 Authentication-Results: pb1.pair.com smtp.mail=php@golemon.com; spf=softfail; sender-id=softfail Authentication-Results: pb1.pair.com header.from=php@golemon.com; sender-id=softfail Received-SPF: softfail (pb1.pair.com: domain golemon.com does not designate 209.85.218.66 as permitted sender) X-PHP-List-Original-Sender: php@golemon.com X-Host-Fingerprint: 209.85.218.66 mail-oi0-f66.google.com Received: from [209.85.218.66] ([209.85.218.66:35516] helo=mail-oi0-f66.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 75/D8-04761-8FCD5685 for ; Thu, 29 Dec 2016 23:05:13 -0500 Received: by mail-oi0-f66.google.com with SMTP id v84so56503884oie.2 for ; Thu, 29 Dec 2016 20:05:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=golemon-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-transfer-encoding; bh=7ogsycTjU+BHLstaT1sugviHx2VX1mkP1EaiMXL06FU=; b=aBZxFb6xosFwqW8tV/hYWF6lnHOwhgqR3ccEEHYUGeS06JnfiETX3YWKrjnA/qxrAS tVcvWyLYGEi8oXXgkM4TmE6d0relEiYHh+2KV+U5iUEl4Jz7LHPv4qZAYxQ57344vzj0 d0/zzHGu/CN4WmgTGKJW4g9GjRWU5wPZSEvQzF5g+yLIKlhNjJxkWaloSSyyFHAxY/L+ wXXMYS2N6UY4GCWCyZc1kT4tBIEEJlyyKrwDW/osrTgbrfzZinNJifsXrrWlqmL4lUAd oZ5GQBbfwvsj3vYq1KGXcjA6BneUeaMy4+gm4uT9S7NloSNnDR0+hvN+I74KIddLnSgD g8Gw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc:content-transfer-encoding; bh=7ogsycTjU+BHLstaT1sugviHx2VX1mkP1EaiMXL06FU=; b=XW8F6TG59IxH7hUqGcCngpSHi6mTryZ402um4kv1XWwPbP9JmfSNKggD7AjshP99YZ +XPVG+iHqW8Wy7Ws4vONzlDzF/FBnylqB0tQssdjpP51kXD/5u2O5aV7gflMPr3518dQ TzwcwUeJHhTTaSY41SmmsXQtl9JVMKnndq8EFH3vRfexr164krodRPJiTgWa8xz9Ocp3 6AYtFJwGxVh2JPibK4R5S2abyzz0cdctyQNC6a8IKDtlJc3t69Htc8rwn2nGE7yOzgkv MgnlhOOgLdViXzioYXki0+6TcVoPRSq7SDTJBqHCiepf8+FoMW1ATbc3CLYo0k/GIesx 35mA== X-Gm-Message-State: AIkVDXJvy4+px5z9DSxEelEN4zvU+xpYX1cN6f24RwFsYlQTV89wkhLbeBy1pIzrCuvEyH8A4CIZ+yBH4x4G1Q== X-Received: by 10.157.13.166 with SMTP id 35mr20416613ots.145.1483070709448; Thu, 29 Dec 2016 20:05:09 -0800 (PST) MIME-Version: 1.0 Sender: php@golemon.com Received: by 10.157.34.233 with HTTP; Thu, 29 Dec 2016 20:05:09 -0800 (PST) X-Originating-IP: [107.198.91.68] In-Reply-To: <33a265d4-0a72-3e4e-4b32-5eb37d149b60@legalweb.org.uk> References: <88a841b3-23e0-4073-b849-036cbfc11faa@Spark> <33a265d4-0a72-3e4e-4b32-5eb37d149b60@legalweb.org.uk> Date: Thu, 29 Dec 2016 20:05:09 -0800 X-Google-Sender-Auth: 2OqDNjWbQgVb4mlf7eC51-zu0jE Message-ID: To: Bradley Weston , ilija.tovilo@me.com Cc: PHP internals Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] Introduction to the PHP source code From: pollita@php.net (Sara Golemon) On 29/12/16 16:17, ilija.tovilo@me.com wrote: > Looking at the giant repository I feel a little overwhelmed. Is there a > place where I can get started and learn more about the architecture of th= e > interpreter before diving into the source code itself? I=E2=80=99m sorry = if this > question has been asked before. > phpinternalsbook.com is a start, but bear in mind it's PHP5 focused and while the general concepts are the same, a lot of important specifics have changed in 7. Broadly speaking: ext/$1/*.c <--- extension code, where $1 is the extension name (roughly). zend_module_entry is the "start point" that everything else bubbles out from. All the zend_*() APIs are in Zend/ and (most) of the others are in main/ You can follow repos like https://github.com/sgolemon/2016-sfmeetup which are concept-by-concept walkthroughs of the most essential basics. Focus on extensions to start, once you're comfortable with those, you can move confidently onto the scripting engine, sapis, etc... On Thu, Dec 29, 2016 at 10:42 AM, Bradley Weston wro= te: > I'm trying to do the same thing. > > I've tried to fix a bug in SPL iterators. However the code is not documen= ted > anywhere and the guys on IRC aren't able to help much without dedicating > their time. > You can also try http://chat.stackoverflow.com/rooms/11/php -Sara