<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Create a node synchronously</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="zookeeper.construct.html">Zookeeper::__construct</a></div> <div class="next" style="text-align: right; float: right;"><a href="zookeeper.delete.html">Zookeeper::delete</a></div> <div class="up"><a href="class.zookeeper.html">Zookeeper</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="zookeeper.create" class="refentry"> <div class="refnamediv"> <h1 class="refname">Zookeeper::create</h1> <p class="verinfo">(PECL zookeeper >= 0.1.0)</p><p class="refpurpose"><span class="refname">Zookeeper::create</span> — <span class="dc-title">Create a node synchronously</span></p> </div> <div class="refsect1 description" id="refsect1-zookeeper.create-description"> <h3 class="title">Description</h3> <div class="methodsynopsis dc-description"> <span class="modifier">public</span> <span class="type">string</span> <span class="methodname"><strong>Zookeeper::create</strong></span> ( <span class="methodparam"><span class="type">string</span> <code class="parameter">$path</code></span> , <span class="methodparam"><span class="type">string</span> <code class="parameter">$value</code></span> , <span class="methodparam"><span class="type">array</span> <code class="parameter">$acls</code></span> [, <span class="methodparam"><span class="type">int</span> <code class="parameter">$flags</code><span class="initializer"> = <strong><code>NULL</code></strong></span></span> ] )</div> <p class="para rdfs-comment"> This method will create a node in ZooKeeper. A node can only be created if it does not already exists. The Create Flags affect the creation of nodes. If ZOO_EPHEMERAL flag is set, the node will automatically get removed if the client session goes away. If the ZOO_SEQUENCE flag is set, a unique monotonically increasing sequence number is appended to the path name. </p> </div> <div class="refsect1 parameters" id="refsect1-zookeeper.create-parameters"> <h3 class="title">Parameters</h3> <dl> <dt> <code class="parameter">path</code></dt> <dd> <p class="para"> The name of the node. Expressed as a file name with slashes separating ancestors of the node. </p> </dd> <dt> <code class="parameter">value</code></dt> <dd> <p class="para"> The data to be stored in the node. </p> </dd> <dt> <code class="parameter">acls</code></dt> <dd> <p class="para"> The initial ACL of the node. The ACL must not be null or empty. </p> </dd> <dt> <code class="parameter">flags</code></dt> <dd> <p class="para"> this parameter can be set to 0 for normal create or an OR of the Create Flags </p> </dd> </dl> </div> <div class="refsect1 returnvalues" id="refsect1-zookeeper.create-returnvalues"> <h3 class="title">Return Values</h3> <p class="para"> Returns the path of the new node (this might be different than the supplied path because of the ZOO_SEQUENCE flag) on success, and false on failure. </p> </div> <div class="refsect1 errors" id="refsect1-zookeeper.create-errors"> <h3 class="title">Errors/Exceptions</h3> <p class="para"> This method emits PHP error/warning when parameters count or types are wrong or fail to create node. </p> <div class="caution"><strong class="caution">Caution</strong> <p class="para"> Since version 0.3.0, this method emits <strong class="classname">ZookeeperException</strong> and it's derivatives. </p> </div> </div> <div class="refsect1 examples" id="refsect1-zookeeper.create-examples"> <h3 class="title">Examples</h3> <div class="example" id="example-5839"> <p><strong>Example #1 <span class="methodname"><strong>Zookeeper::create()</strong></span> example</strong></p> <div class="example-contents"><p> Create a new node. </p></div> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br />$zookeeper </span><span style="color: #007700">= new </span><span style="color: #0000BB">Zookeeper</span><span style="color: #007700">(</span><span style="color: #DD0000">'locahost:2181'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$aclArray </span><span style="color: #007700">= array(<br /> array(<br /> </span><span style="color: #DD0000">'perms' </span><span style="color: #007700">=> </span><span style="color: #0000BB">Zookeeper</span><span style="color: #007700">::</span><span style="color: #0000BB">PERM_ALL</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'scheme' </span><span style="color: #007700">=> </span><span style="color: #DD0000">'world'</span><span style="color: #007700">,<br /> </span><span style="color: #DD0000">'id' </span><span style="color: #007700">=> </span><span style="color: #DD0000">'anyone'</span><span style="color: #007700">,<br /> )<br />);<br /></span><span style="color: #0000BB">$path </span><span style="color: #007700">= </span><span style="color: #DD0000">'/path/to/newnode'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$realPath </span><span style="color: #007700">= </span><span style="color: #0000BB">$zookeeper</span><span style="color: #007700">-></span><span style="color: #0000BB">create</span><span style="color: #007700">(</span><span style="color: #0000BB">$path</span><span style="color: #007700">, </span><span style="color: #0000BB">null</span><span style="color: #007700">, </span><span style="color: #0000BB">$aclArray</span><span style="color: #007700">);<br />if (</span><span style="color: #0000BB">$realPath</span><span style="color: #007700">)<br /> echo </span><span style="color: #0000BB">$realPath</span><span style="color: #007700">;<br />else<br /> echo </span><span style="color: #DD0000">'ERR'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> <div class="example-contents"><p>The above example will output:</p></div> <div class="example-contents screen"> <div class="cdata"><pre> /path/to/newnode </pre></div> </div> </div> </div> <div class="refsect1 seealso" id="refsect1-zookeeper.create-seealso"> <h3 class="title">See Also</h3> <ul class="simplelist"> <li class="member"><span class="methodname"><a href="zookeeper.delete.html" class="methodname" rel="rdfs-seeAlso">Zookeeper::delete()</a> - Delete a node in zookeeper synchronously</span></li> <li class="member"><span class="methodname"><a href="zookeeper.getchildren.html" class="methodname" rel="rdfs-seeAlso">Zookeeper::getChildren()</a> - Lists the children of a node synchronously</span></li> <li class="member"><a href="class.zookeeper.html#zookeeper.class.constants.perms" class="link">ZooKeeper Permissions</a></li> <li class="member"><strong class="classname">ZookeeperException</strong></li> </ul> </div> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="zookeeper.construct.html">Zookeeper::__construct</a></div> <div class="next" style="text-align: right; float: right;"><a href="zookeeper.delete.html">Zookeeper::delete</a></div> <div class="up"><a href="class.zookeeper.html">Zookeeper</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>